数据管理中添加自建的MySQL数据库时,提示错误“not allowed to connect to this MySQL server“。
MySQL默认只允许本机进行连接,不允许远程IP进行登录,所以会提示这个错误。
解决方法:
1、根据提示信息,把提示拒绝连接的IP 121.43.18.66 (IP地址以实际控制台提示的为准),在自建MySQL中进行授权,允许远程连接。
登录数据库,执行授权命令:
GRANT ALL PRIVILEGES ON . TO
‘root’@’121.43.18.66’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION;
flush privileges;
授权IP远程连接后,重新在数据管理中,添加数据库,可以正常添加成功。
2、或者给MySQL设置用户授权,允许所有远程IP都可以连接数据库,然后再进行添加。
登录数据库执行命令:
GRANT ALL PRIVILEGES ON . TO
‘root’@’%’ IDENTIFIED BY ‘密码’ WITH GRANT OPTION;
flush privileges;
在数据管理中,添加成功数据库后,可以登录进行管理操作。
如问题还未解决,请联系
售后技术支持
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
您提供的解决方法是正确的。当遇到“not allowed to connect to this MySQL server”这个错误时,确实是因为MySQL服务器默认配置不允许远程主机连接。您的解决方案分两步进行了阐述:
针对特定IP授权:这种方法更安全,仅允许特定的外部IP地址(例如121.43.18.66)访问数据库。执行的SQL命令格式为:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'121.43.18.66' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
其中,*.*
表示对所有数据库和表授权,root
是用户名,121.43.18.66
是要授权的IP地址,your_password
应替换为实际的密码。
允许所有IP连接:这一步骤提供了更广泛的访问权限,允许任何远程IP地址连接到MySQL服务器。虽然方便,但安全性较低。执行的SQL命令为:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
这里%
是一个通配符,代表任何IP地址。
请确保在执行这些命令后使用FLUSH PRIVILEGES;
来立即生效这些权限更改。
如果按照上述步骤操作后问题仍然存在,可能需要检查以下几个方面: - 防火墙设置:确保您的服务器或云服务提供商的防火墙规则没有阻止来自外部的MySQL端口(默认是3306)的连接。 - MySQL配置文件:检查MySQL的配置文件(如my.cnf或my.ini),确认bind-address
是否被设置为0.0.0.0
或者注释掉,以允许从任何IP地址连接。 - 云服务安全组:如果您使用的是阿里云ECS等云服务器,还需要检查实例的安全组规则,确保已添加允许MySQL端口入站的规则。
如果问题复杂或以上步骤未能解决问题,建议联系阿里云的售后技术支持获取专业帮助。