Docker 安裝 MySQL8.0

zhangdeTalk發表於2019-12-22

環境:MacOS_Cetalina_10.15.1、Mysql8.0.18、Docker_2.0.0.3

1、docker倉庫搜尋mysql

docker search mysql

Docker安裝Mysql8.0

2、docker倉庫拉取mysql8.0

docker pull mysql:8.0
備註:
docker pull mysql //預設拉取最新版本

Docker安裝Mysql8.0

3、檢視本地倉庫映象是否下載成功

docker images mysql:8.0

Docker安裝Mysql8.0

4、安裝執行mysql8.0容器

docker run -p 3307:3306 --name mysql8.0 -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0
備註:
-p 將本地主機的埠對映到docker容器埠(因為本機的3306埠已被其它版本佔用,所以使用3307)
--name 容器名稱命名
-e 配置資訊,配置root密碼
-d 映象名稱

Docker安裝Mysql8.0

5、檢視mysql8.0容器執行情況

docker ps

Docker安裝Mysql8.0

6、docker登入mysql

docker exec -it mysql8.0 bash
mysql -uroot -p

Docker安裝Mysql8.0

7、使用客戶端連線工具(navicat)遠端登入mysql

Docker安裝Mysql8.0

Docker安裝Mysql8.0

發現登入不了,報錯:navicat不支援caching_sha_password加密方式
原因:mysql8.0使用新的密碼加密方式:caching_sha_password
解決方式:修改成舊的加密方式(mysql_native_password),並重置密碼
* select host,user,plugin from user;
* alter user 'root'@'%' identified with mysql_native_password by 'root';

Docker安裝Mysql8.0

Docker安裝Mysql8.0

8、使用客戶端連線工具(navicat)重新遠端登入mysql

Docker安裝Mysql8.0

Docker安裝Mysql8.0

9、後記(常用的docker命令)

docker search 映象名稱 //搜尋映象
docker pull 映象名稱:版本號 //拉取對應版本的映象
docker pull 映象名稱 //預設拉取最新的映象
docker images //檢視本地已下載的映象
docker ps //檢視正在執行的容器
docker ps -a //檢視所有的容器(包括run、stop、exited狀態的)
docker container ls //檢視正在執行的容器
docker rm 容器ID //只能刪除沒有在執行的容器
docker rm -f 容器ID //可以刪除正在執行的容器
docker run -p 本地主機埠號:容器服務埠號 --name 容器名字 [-e 配置資訊修改] -d 映象名字
docker start 容器ID //啟動容器
docker stop 容器ID //終止容器
docker rmi 映象名稱orID //刪除映象

相關文章