1. 异常错误
通过远程客户端访问MySQL服务器时会遇到“Host is not allowed to connect to this MySQL server”的错误提示。
2. 原因
MySQL服务器当前配置不允许来自特定主机的连接尝试。
3. 解决方法
允许远程主机访问MySQL服务器,按照以下步骤操作:
- 登录本地MySQL服务器:
以管理员身份登录到MySQL服务器,输入MySQL root用户的密码:
mysql -u root -p
- 选择MySQL数据库:
登录成功后,切换到MySQL系统数据库:
use mysql;
- 更新用户权限:
修改root用户的host字段(或其他需要远程访问的用户),允许任意远程主机(用 ‘%’ 表示)进行连接,但这一步可能涉及到安全风险,建议只针对需要远程访问的特定用户设置具体的远程IP地址,而不是使用通配符 % 开启所有远程访问:
update user set host = '%' where user = 'root';
- 刷新权限:
flush privileges;
- 防火墙设置:
确保服务器的防火墙规则允许MySQL服务端口(默认为3306)上的入站流量。
-
MySQL配置文件:
检查MySQL服务器的配置文件(如my.cnf
或my.ini
),确保没有禁止远程连接的相关设置,bind-address
参数通常需要设置为0.0.0.0
或者指定的公网IP地址以接受远程连接。 -
验证远程连接:
从远程客户端尝试重新连接到MySQL服务器,确认问题是否已解决
参考https://blog.csdn.net/qq_46207024/article/details/135739927
文章,感谢!