1. 程式人生 > >Windows+MyEclipse+MySQL【連線資料庫報錯caching_sha2_password】

Windows+MyEclipse+MySQL【連線資料庫報錯caching_sha2_password】

在MyEclipse中開啟【視窗】->【顯示檢視】-> MyEclipse Database Browser -> (圖片裡倒三角)New....

 

①Driver template:MySQL Conntctor/J;

 

②Driver name:自己隨意命名,最後會顯示在DB Broswer欄裡供以後使用;

 

③Connection URL:預設:jdbc:mysql://<hostname>[<:3306>]/<dbname>,修改為jdbc:mysql://localhost:3306/mendy,其中mendy為MySQL中database的名字(cmd終端登入資料庫後,show databases會顯示所有的資料庫,我這裡的mendy為我的資料庫,請自行更改);

 

④User name,password:登入資料庫使用者名稱字和密碼(此處建議不使用root使用者,後面Test Driver我再說明)

 

⑤Add JARs:新增一個jar包 (此處我試了很多jar包Driver classname 才有選項進行選擇,這裡我用的mysql-connector-java-5.1.47-bin.jar,在mysql官網裡下載https://dev.mysql.com/downloads/connector/j/)

 

⑥Driver classname:下拉列表中選擇com.mysql.jdbc.Driver

 

⑦Test Driver :成功後儲存。


   最後一步這裡我遇到了很多問題

(要注意下自己填寫的使用者的許可權夠不夠,還有密碼要填好不要弄錯)

(上面不建議root使用者,因為當時我使用了root使用者,連線MySQL報錯Unable to load authentication plugin 'caching_sha2_password'由於MySQL在8.0後驗證方式由mysql_native_password變為caching_sha2_password,[mysql庫select user,host,plugin,authentication_string from user;可以看到]

所以連線時會報這個錯。就要把使用者的plugin改成'mysql_native_password',這種加密方式,我當時上來就改了root的加密方式,對,然後就限制登陸了,剛弄時候只有一個使用者,啥也操作不了了,最後重新裝了一遍MySQL,如果其他使用者也遇到這個問題[mysql庫alter user [email protected] identified with mysql_native_password by 'password’;])