解決遠程連接mysql錯誤ERROR 1130 的方法

解決遠程連接mysql錯誤1130代碼的方法

今天在用遠程連接Mysql服務器的數據庫,不管怎麼弄都是連接不到,錯誤代碼是1130,

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

在這裏插入圖片描述
猜想是無法給遠程連接的用戶權限問題。結果這樣子操作mysql庫,即可解決。
在本機登入mysql後,更改 “mysql” 數據庫裏的 “user” 表裏的 “host” 項,從”localhost”改稱’%’。。

mysql -u root -p

mysql>use mysql;

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

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

mysql>flush privileges;

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

第一句是以權限用戶root登錄

第二句:選擇mysql庫

第三句:查看mysql庫中的user表的host值(即可進行連接訪問的主機/IP名稱)

第四句:修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址

第五句:刷新MySQL的系統權限相關表

第六句:再重新查看user表時,有修改。。

重啓mysql服務即可完成。


下面是其他人的回答,但是沒有解決我的問題,可以提供參考

MySQL 用戶帳號的修改 error 1130

2007-09-07 09:18

MySQL上的一個數據庫要備份,裝了個MySQL的gui工具。打開"MySQL Administrator"工具,填好用戶名和密碼卻登錄不了,老是報這個錯“ERROR 1130: Host ‘lijuan-’ 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 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

我的mysql.user裏root用戶的host果然是localhost,先用改表法給localhost改成“%”,還是不行,仍然報1130的錯誤,又按“從任何主機連接到mysql服務器”方法授權,還是報一樣的錯,最後給自己的ip授權之後,終於登錄上了。。。。乎乎。。。

mysql的ERROR 1045 在上面情況後如再出現客戶段1045可在服務器執行如下

UPDATE user SET Password=PASSWORD('123456') where USER='myuser';

FLUSH PRIVILEGES;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章