您的位置:首页 > 数据库 > MySQL

mysql 远程访问不行解决方法 Host is not allowed to connect to this MySQL server

2016-11-04 10:46 645 查看
mysql> update user set host = '%' where user = 'root';

ERROR 1062 (23000): Duplicate entry '%-root' for key 1

mysql> select host,user from user;

+------------------+------+

| host             | user |

+------------------+------+

| %                | root |

| 127.0.0.1        | root |

| 192.168.33.110   | root |

| yunwei2.uid5a.cn | root |

+------------------+------+

4 rows in set (0.00 sec)

mysql> select host,user from user;

+------------------+------+

| host             | user |

+------------------+------+

| %                | root |

| 127.0.0.1        | root |

| 192.168.33.110   | root |

| yunwei2.uid5a.cn | root |

+------------------+------+

4 rows in set (0.00 sec)

mysql> grant all privileges on *.* to
'root'@'%' identified by 'uid5a827' with g                                                                                                 rant option;

Query OK, 0 rows affected (0.00 sec)

mysql> flush;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that                                                                                                  corresponds to your MySQL server version for the right syntax to use near '' at                                                                                                 
line 1

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

mysql> grant all privileges on *.* to 'root'@'buy2.w98-e5.ezwebtest.com' identified by 'abcd1234' with grant option;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

参考文章

http://till.iteye.com/blog/115659

如果你想连接你的mysql的时候发生这个错误:

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

解决方法:

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

mysql -u root -pvmwaremysql>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.1.3的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.* TO
'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO
'root'@'10.10.40.54' IDENTIFIED BY '123456' WITH GRANT OPTION;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐