解決此問題有以下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庫中的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權限用戶登錄哦,否則是不可以修改的)