【MySQL】允许 MySQL 远程登录,解决 [HY000][1130] Host is not allowed to connect to this MySQL server
错误解释:
这个错误表示 MySQL 服务器不允许来自当前主机的远程登录尝试。错误代码 [HY000][1130] 指示了这一点。
解决方法:
- 确认 MySQL 服务正在监听外部连接。如果配置文件中的
bind-address
参数被设置为127.0.0.1
,那么 MySQL 只会接受来自本机的连接。要允许远程连接,需要将此参数注释掉或设置为0.0.0.0
。 确保 MySQL 用户账号被授权从远程主机登录。可以使用如下命令授权:
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'%' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
其中
database_name
替换为你的数据库名,username
和password
替换为相应的用户名和密码。%
表示允许从任何主机远程登录。- 如果使用了防火墙,确保 3306 端口(MySQL 默认端口)对于远程连接是开放的。
如果上述步骤都正确完成,但仍然出现问题,检查 MySQL 用户账号的认证插件是否匹配。如果不匹配,可以通过以下命令修改:
ALTER USER 'username'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; FLUSH PRIVILEGES;
确保在每次修改权限或配置后,都执行 FLUSH PRIVILEGES;
命令来刷新权限设置。
评论已关闭