2017-08-31 106 views
-1

我試圖授予特權根,做沖洗privelege,但是當我檢查SHOW GRANTS,我得到這個:如何在MySQL中啓用遠程訪問?

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*******' WITH GRANT OPTION 

在phpMyAdmin的用戶帳戶頁面,我看到這條消息:

存在允許來自本地主機的任何用戶連接的用戶帳戶。 這將防止連接如果 他們的帳戶的主機部分可以從任意(%)host.Documentation

這是什麼意思的連接其他用戶,這怎麼可能阻止我從遠程訪問數據庫?

+0

如果您嘗試遠程訪問,那麼您的用戶將看起來像''root'@x.x.x.x'',其中'x.x.x.x'是您當前的IP地址。所以你根本就不能連接,因爲mysql只知道''root'@'localhost'' –

回答

0

擁有一個'user'@'localhost'帳戶意味着不接受遠程連接。

如果您希望能夠從任何地方連接,則授予應該在'user'@'%'上,其中%是匹配任何IP地址的通配符。

+0

我已經試過了''把所有的特權都授予*。*到'root'@'%''但它沒有工作。 'localhost'和'%'之間是否有衝突? – Nick

+0

@尼克你看到什麼錯誤?還要檢查/var/log/mysqld.log –