2012-12-27 83 views
2

我想創建一個可以從任何主機訪問MySQL服務器值java.sql.SQLException:拒絕訪問用戶

我使用一個用戶

create user [email protected] identified by 'abc123'

grant all privileges mydb.* to 'abc'@'%';

但是當我運行客戶端時,發生錯誤: "java.sql.SQLException: Access denied for user 'abc'@'10.10.0.7' (using password: YES)

請幫幫我!

+0

您已經創建了10.10.131.17 IP的用戶,並正試圖從10.10.10.7連接MySQL服務器。它不會工作。爲此,您必須使用10.10.10.7 IP創建用戶'create user [email protected]'abc123''確定 –

+0

我使用VPN作爲實際LAN,並且我想從任何地方訪問,我創建了一個用戶'abc '@' %」。但它不起作用。我害怕,當我在其他網絡,可能會很好? – lannv

+0

檢查我的答案並創建一個允許所有IP的用戶。並檢查你的服務器是否有防火牆運行。允許這些IP位於服務器上的防火牆上 –

回答

0

一個明顯的猜測是,你發出GRANT聲明後你沒有做FLUSH PRIVILEGES;

另一個明顯的猜測(不知道是否在問題中的錯字)是GRANT的語法是GRANT ALL PRIVILEGES ON mydb.* TO 'abc'@'%';,其中ON在其中。

+0

對不起,輸入錯誤, 我用「刷新權限」授予命令後ON你說 – lannv

0

您已經創建了允許IP 10.10.131.17的用戶,並且您正在嘗試連接IP 10.10.10.7的MySQL服務器。所以它不會工作。 要訪問MySQL服務器,您必須創建允許IP 10.10.10.7的用戶或允許使用%的所有IP。

CREATE USER `abc`@`10.10.10.7` IDENTIFIED BY 'abc123' 
GRANT ALL PRIVILEGES mydb.* TO `abc`@`10.10.10.7`; 

OR

CREATE USER `abc`@`%` IDENTIFIED BY 'abc123' 
GRANT ALL PRIVILEGES mydb.* TO `abc`@`%`; 
+0

是的,它在第一種情況下罰款 我也試過第二種情況,但它不工作,謝謝 – lannv

+0

你檢查我對你的問題發表了評論 –

相關問題