docker 安裝mysql8.0


前提:

  異常:

    docker 安裝 mysql 8  外部連接會報一下異常: Authentication plugin 'caching_sha2_password' cannot be loaded

  原因

    出現這個原因是mysql8 之前的版本中加密規則是mysql_native_password,而在mysql8之后,加密規則是caching_sha2_password, 解決問題方法有兩種,一種是升級navicat驅動,一種是把mysql用戶登錄密碼加密規則還原成mysql_native_password.

安裝環境:

  centos7

  Docker version 1.13.1

安裝步驟:

  1.拉取鏡像,不帶版本號,默認拉取最高版本: docker pull mysql 

  2.查看鏡像:docker images

  

  3.啟動鏡像 做端口映射 3306到外網,不然連接不上:docker run -p 3306:3306 --name mysql02 -e MYSQL_ROOT_PASSWORD=123456 -d mysql

  4.查看運行中的容器,看是否啟動成功:

  

 

   5.外部連接報錯:

  

解決方法

  1.進入docker容器 :docker exec -it c4bf367b7155  bash

  

  2.登陸數據庫 : mysql -uroot -p{密碼}。  借鑒  :https://blog.csdn.net/u014527619/article/details/80509671 不成功 。

  

  以這種方式登陸(成功) : 

    1. mysql -uroot -p   。回車

    2.輸入密碼

  

 

    

    3.修改數據庫
      mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

    4.重新修改密碼后可連接成功
      mysql> alter user 'root'@'%' identified by '123456';

    5.刷新數據庫
      mysql> flush privileges;
    6.重新外網登陸ok

 

文章借鑒:https://blog.csdn.net/u014527619/article/details/80509671

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM