zbb20170811 mysql远程连接报错: Host * is not allowed to connect to this MySQL server,解决方法

解决此问题有以下2个方法:

localhost改成%

1.进入mysql的BIN目录

注:root为管理员用户名,password为用户root的密码:

mysql -u root -p password

mysql>use mysql;

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

mysql>flush privileges;

注:这时候连接此服务器的mysql客户端需要重新启动下,然后再连接此服务器。

具体分析

1、在本机登入mysql后,更改“mysql”数据库里的“user”表里的“host”项,从”localhost”改为'%'。

mysql> 
mysql>use mysql; 
mysql>select 'host' from user where user='root';     

#查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)

另一种方法

如果你使用的是客户端软件,我们可以在mysql服务器上使用客户端软件进入,在查询分析器中输入:(注意,你必须是root权限用户登录哦,否则是不可以修改的)

use mysql;
select * from user where user='root'; 

在查询结果中(只有一条)直接修改host列值,由localhost改为#,点击apply运行即可修改。然后重启客户端再重新连接即可。
或者:

use mysql;

update user set host = '%' where user ='root' and host='localhost'

然后重启客户端再重新连接即可。

原文地址:https://www.cnblogs.com/super-admin/p/7348246.html