簡體   English   中英

用Java連接到MySQL數據庫錯誤

[英]Connecting to MySQL database error in Java

我有一個Java代碼,並使用以下連接字符串連接到mysql數據庫。

 String userName = "admin";
 String password = "pass";
 String url = "jdbc:mysql://<my IP>/dbase"; //not localhost
 Class.forName ("com.mysql.jdbc.Driver").newInstance ();
 conn = DriverManager.getConnection (url, userName, password);

當我制作一個JAR(通過Eclipse運行可運行的JAR)並將其帶到同一網絡中的另一台機器時,出現錯誤

Access denied for user 'admin'@'<another machine IP' (using password: YES) //not localhost

當我將JAR轉移到另一台計算機時,IP神奇地更改為另一台計算機IP。 admin用戶擁有所有可能的權限。

怎么了? 請幫忙 !!

錯誤消息中列出的IP地址是您的程序在其上運行的計算機的IP地址 告訴您,不允許您以root身份該IP地址連接到MySQL

您將需要與配置/管理MySQL數據庫的人員交談。 這很有可能是一種故意的安全措施。

也許您應該運行以下命令。

grant all privileges on *.* to 'admin'%'@' identified by 'pass';
flush privilges;

我認為您的Java代碼沒有問題。 也嘗試從命令提示符連接mysql服務器

mysql -u root -h <ip address> -p

如果您遇到相同的錯誤,則可能的原因是1.使用正確的密碼2.拒絕通過網絡訪問權限

您可以使用以下命令授予權限

GRANT ALL ON db.* to root@'ip' IDENTIFIED BY 'PASSWORD';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM