mysql无法远程连接到数据库解决方法

ERROR 1130: Host ’xxx.xxx.xxx.xxx′ is not allowed to connect to this MySQL server这是告诉你没有权限连接指定IP的主机,下面我们来看看解决办法。

1、授权法

例如,你想"myuser"使用密码为"mypassword"从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

如果你想允许用户"myuser"从ip为192.168.1.106的主机连接到mysql服务器,并使用"mypassword"作为密码

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.106' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

2、 改表法

可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称”%”

GRANT SELECT,INSERT,UPDATE,DELETE ON [db_name].* TO [username]@[ipadd] identified by '[password]';

[username]:远程登入的使用者用户名
[db_name]:表示欲开放给使用者的数据库称
[password]:远程登入的使用者密码
[ipadd]:IP地址或者IP反查后的DNS Name,此例的内容需填入'60-248-32-13.HINET-IP.hinet.net' ,包函上引号(')

(其实就是在远端服务器上执行,地址填写本地主机的ip地址。)

原文地址:https://www.cnblogs.com/wangmingshun/p/5655649.html