1. 程式人生 > >java連接數據庫失敗:java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

java連接數據庫失敗:java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

odi 沒有 目的 命令 nic 通過命令 產生 class 錯誤

說一下我的情況:

  1、通過命令行的mysql -uroot -p輸入密碼可以登錄(證明賬號和密碼正確)

  2、使用最基本的JDBC連接數據庫也失敗了,報同樣的錯誤信息

嘗試過

  1、清緩存(包括整個項目的緩存,重新打包發布),電腦和服務器重啟了n遍

  2、連接mysql的url中增加編碼格式:

jdbc_url=jdbc:mysql://127.0.0.1:3306/myDB?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
jdbc_username=root
jdbc_password=123456

  3、檢查jdbc_username和jdbc_password的值前後是否有空格(刪除多余的空格)

  4、檢查是否開啟遠程連接(已經開啟)

  上面這幾種方式,在我這裏並沒有產生效果。

自己嘗試了一下

  重新修改了一下登錄用戶的權限,看是否有用:

grant all on myDB.* to ‘root‘@‘%‘ identified by ‘123456‘
# 用戶名為root,密碼為123456的用戶,允許其從任意ip登錄
# 並且授予該用戶對myDB這個數據庫下所有表的所有權限(增刪改查)

  

  嘗試了一下,有用,至少在我的機器上有效,不保證通用性。

java連接數據庫失敗:java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)