好小伙潇潇洒洒

小小的天,有大大的梦想,我有属于我的天!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

通过Navicat for MySQL远程连接的时候报错mysql 1130的解决方法

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

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; 

posted on 2017-10-27 14:33  Mr.毛小毛  阅读(896)  评论(0)    收藏  举报