Navicat for mysql 1130错误 用Navicat连接远程MYSQL,提示如下错误,我以为是自己的防火墙问题,但是关了,依然不行。 

我认为这段英文,有点误导,让人感觉是自己这边出了问题。 

看解决方法吧 

ERROR 1130: Host '192.168.1.3' is not allowed to connect to thisMySQL server 

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

mysql -u root -pvmwaremysql>usemysql;mysql>update user set host = '%' where user ='root';mysql>select host, user from user; 

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

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

方法二:

错误代码是1130,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this MySQL server 是无法给远程连接的用户权限问题 

给用户授权 

我用的用户是root 密码123456 

首选语法为: 
Sql代码 
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 

示例: 
Sql代码 
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 

执行完后,再 
mysql:flush privileges; 
刷新一下权限就可以了,不用重启 

完整操作: 

开始->运行->cmd 
cd\ 
cd mysql安装目录\bin 
mysql -u root -p123456; 
mysql GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; 
mysql flush privileges;