Mysql:Host 'xxx' is not allowed to connect to this MySQL server

解决方法:

找到mysql安装bin目录,打开cmd。


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

修改host字段的值,将localhost修改成需要远程连接数据库的ip地址。或者直接修改成%。修改成%表示,所有主机都可以通过root用户访问数据库。为了方便,直接修改成%。
命令:
mysql -u root -p 123456

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.0.123的主机连接到mysql服务器,并使用mypassword作为密码:

命令:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.0.123' IDENTIFIED BY '123456' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES; 回车使刚才的修改生效,再次远程连接数据库成功。

别忘记最后的FLUSH PRIVILEGES; 刷新先前的修改。

猜你喜欢

转载自blog.csdn.net/gaoxiang24/article/details/89371496