Navicat 遠程連接Docker容器中的mysql 報錯:1251 - Client does not support authentication protocol 解決辦法。

原文鏈接:https://blog.csdn.net/ouyangjieaini/article/details/81234354

docker pull mysql

我拉取的最新的版本8.0以上

在xshell客戶端(其它客戶端也行)命令行界面進入mysql數據庫
(1)容器中登錄mysql,進入mysql>命令行

  1、docker exec -it mysql bash      //mysql是mysql容器的別名

  2、mysql -uroot -p   //-uroot

  3、輸入密碼

  4、進入mysql>命令行界面

(2)進行授權遠程連接(注意mysql 8.0跟之前的授權方式不同)

  1、mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; 

  2、mysql>FLUSH PRIVILEGES;

(3)更改加密規則

  ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

(4)更新root用戶密碼

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密碼'; 

刷新權限

flush privileges;

(5)OK,設置完成,再次使用 Navicat 連接數據庫

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章