解決方法:?
?
1. 改表法。?
?
可能是你的帳號不允許從遠程登陸,只能在localhost。這個時候只要在localhost的那臺電腦,登入mysql后,更改 "mysql"?
數據庫
里的 "user" 表里的 "host" 項,從"localhost"改稱"%"?
?
mysql
?-u root -pvmwaremysql>use mysql; ? www.2cto.com ?
?
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;?
?
FLUSH ? PRIVILEGES;?
?
如果你想允許用戶myuser從ip為192.168.1.6的主機連接到mysql服務器,并使用mypassword作為密碼?
?
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; ? www.2cto.com ?
?
FLUSH ? PRIVILEGES;?
?
如果你想允許用戶myuser從ip為192.168.1.6的主機連接到mysql服務器的dk數據庫,并使用mypassword作為密碼?
?
GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;?
?
FLUSH ? PRIVILEGES;?
?
我用的第一個方法,剛開始發現不行,在網上查了一下,少執行一個語句 mysql>FLUSH RIVILEGES 使修改生效.就可以了?
?
另外一種方法,不過我沒有親自試過的,在csdn.net上找的,可以看一下.?
?
在安裝mysql的機器上運行: ? www.2cto.com ?
?
1、d:\mysql\bin\>mysql ? -h ? localhost ? -u ? root //這樣應該可以進入MySQL服務器?
?
2、mysql>GRANT ? ALL ? PRIVILEGES ? ON ? *.* ? TO ? 'root'@'%' ? WITH ? GRANT ? OPTION //賦予任何主機訪問數據的權限?
?
3、mysql>FLUSH ? PRIVILEGES //修改生效?
?
4、mysql>EXIT //退出MySQL服務器?
?
這樣就可以在其它任何的主機上以root身份登錄啦!?
message from server: "Host 'xxx' is not allowed to connect to this MySQL server的解決
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
