mysql遠端連線 Host * is not allowed to connect to this MySQL server

上校發表於2017-03-22

如果mysql不支援遠端連線,會出現提示:錯誤程式碼是1130,ERROR 1130: Host * is not allowed to connect to this MySQL server ,

解決此問題有以下2個方法:

localhost改成%

進入mysql的BIN目錄

 程式碼如下 複製程式碼

mysql -u root -p

mysql>use mysql;

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

mysql>flush privileges;

具體分析

1、在本機登入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

另一種方法

如果你使用的是phpmyadmin我們可以登入phpmyadmin然後在許可權管理中進入,這裡會看到所有的使用者了,你找到root使用者點選修改,然後把域修改成%號即可了(注意,你必須是root許可權使用者登入哦,否則是不可以修改的)

相關文章