最近要使用MySQL Workbench遠程管理工具進行遠程管理虛擬機上的MySQL??墒?,在配置的過程中,遇到了一些問題,下面是這個問題(HOSt ip is not allowed to connect to this MySql server)的描述以及解決辦法。
本地系統(tǒng):Window 7
虛擬機系統(tǒng):CentOS 6.5
MySQL版本:mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
MySQL Workbench版本:MySQL Workbench 6.2 CE
HOSt ip is not allowed to connect to this MySql server
對于這個問題,還是有糾結了一下的。因為我在為兩臺虛擬機添加遠程控制的時候,發(fā)現(xiàn)第一臺可以過,而第二臺怎么都過不了。下面是我的處理過程:
上面的報錯信息是因為我們的MySQL沒有提供遠程控制的服務。我們可以通過以下方法進行解決:
1.改表法:
可能是你的帳號不允許從遠程登陸,只能在localhost。
這個時候只要在localhost的那臺電腦,登入mysql后,更改 "mysql" 數(shù)據(jù)庫里的 "user" 表里的 "host" 項,從"localhost"改稱"%"
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> select host, user from user;
2.授權法:
例如,你想myuser使用mypassword從任何主機連接到mysql服務器的話。
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允許用戶loginName從ip為192.168.1.6的主機連接到mysql服務器,并使用Password作為密碼
mysql> GRANT ALL PRIVILEGES ON *.* TO 'loginName'@'192.168.1.6'IDENTIFIED BY 'Password' WITH GRANT OPTION;
我使用的是上一句。
mysql>FLUSH RIVILEGES;
3.另外一種方法:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> EXIT;
本人沒有進行第3種方法,因為前兩種方法可以很好的解決問題。
不過對于改表法,我是沒有執(zhí)行到第三步的。因為第二步就報錯了。好吧,那我就來嘗試一下授權法。授權法是可以的。就這樣我的第一臺機器可以使用MySQL Workbench進行遠程管理了。
可是當我開始對我的第二臺機器進行操作時,很不幸,沒能成功。原因是我以為改表法出現(xiàn)了Error就可以直接跳過了,直接進行授權法??墒牵@是不行的。于是我改表法又操作了一遍,并且進行了第三步操作,我看到,實際上第二步是修改成功的。
就這樣我的兩臺機器都可以通過MySQL Workbench進行遠程管理了。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com