ERROR 1130: Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server
这是因为MySQL的默认配置不允许远程主机连接MySQL服务.可能的原因包括:
bind-address 配置选项已被设置为 localhost .这意味着只允许本地主机连接MySQL服务.如果你希望允许远程主机连接,那么 bind-address 必须被设置为MySQL服务器的公共IP地址.
没有为远程主机分配MySQL用户和权限.默认情况下,只有在使用本地IP地址连接MySQL时,才可以使用root用户进行连接.
所以,如果你想要允许远程主机连接MySQL服务,你需要对MySQL配置进行相应的更改.
打开MySQL配置文件:/etc/mysql/mysql.conf.d/mysqld.cnf (具体文件路径可能会因部署环境的不同而有所不同).
找到 bind-address 配置选项,将其设置为MySQL服务器的公共IP地址.例如:
bind-address = 0.0.0.0
保存文件并退出.
重新启动MySQL服务:
sudo systemctl restart mysql
示例一:
bind-address = 0.0.0.0
登录到MySQL服务器:
mysql -u root -p
创建一个新用户,命名为 remoteuser,并为该用户分配远程连接权限:
CREATE USER 'remoteuser'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'remoteuser'@'%' WITH GRANT OPTION;
这将创建一个新用户 remoteuser,并为该用户授予所有数据库的所有权限,包括授予该用户管理权限.
FLUSH PRIVILEGES; exit;
现在,你可以使用 remoteuser 用户和密码连接到MySQL服务器,并查看MySQL数据库中的数据了.
示例二:
CREATE USER 'remoteuser'@'192.16⑧1.200' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'remoteuser'@'192.16⑧1.200' WITH GRANT OPTION;
总结:
以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!