如果Navicat在连接MySQL数据库时不支持远程连接,会出现错误提示:ERROR 1130: Host * is not allowed to connect to this MySQL server。那么这个1130错误该如何解决呢?
1130 - Host 'localhost' is not allowed to connect to this MySQL server
Navicat for MySQL 1130错误
Error No.1130 Host '192.168.25.3' is not allowed to connect to this MySQL server
Navicat for MySQL 1130错误
解决Navicat for MySQL 1130错误有两个方法,如下:
1. 改表法
可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑登入MySQL后,更改"MySQL"数据库"user"表里的"host"项,将"localhost"改成"%"
代码如下:
mysql -u root -p
mysql>use mysql;
mysql>update user set host =’%'where user =’root’;
mysql>flush privileges;
具体操作:
在本机登入mysql后,更改“mysql”数据库里的“user”表里的“host”项,从”localhost”改为'%'。
代码如下:
mysql>
mysql>use mysql;
mysql>select 'host' from user where user='root';
查看MySQL库中的user表的host值,即可进行连接访问的主机/IP名称。
代码如下:
mysql>update user set host = '%' where user ='root';
修改host值,以通配符%的内容增加主机/IP地址,当然也可以直接增加某个特定IP地址,如果执行update语句时出现ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'错误,需要select host from user where user = 'root';
查看一下host是否已经有了%这个值,如果有了直接执行下面的flush privileges;即可。
代码如下:
mysql>flush privileges;
mysql>select host,user from user where user='root';
mysql>quit
2. 修改权限
如果你使用的是phpmyadmin,可以登录phpmyadmin,然后在权限管理中进入,这里会看到所有的用户,找到root用户点击修改,然后把域修改成“%”号即可了。需要注意的是,你必须是root权限用户登录,否则是不可以修改的。
通过以上方法就能解决Navicat for MySQL 1130 'localhost' 错误,如果还有其他问题,点击“Navicat教程”可获取更多服务。