1. 查看可用的 MySQL 版本
我們可以用 docker search mysql 命令來(lái)查看可用版本
docker search mysql
image.png
2. 拉取 MySQL 鏡像
docker pull mysql:latest # 拉取最新版本鏡像
docker pull mysql:版本號(hào) # 拉取指定版本鏡像
3. 查看本地鏡像
docker images
image.png
4. 運(yùn)行容器
安裝完成后省核,我們可以使用以下命令來(lái)運(yùn)行 mysql 容器
docker run -itd --name my-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
參數(shù)說(shuō)明:
-
--name my-mysql
:容器自定義名稱 -
-p 3306:3306
:映射容器服務(wù)的 3306 端口到宿主機(jī)的 3306 端口沸毁。外部可以直接通過(guò)宿主機(jī)ip:3306 訪問(wèn)到 MySQL 的服務(wù)。 -
MYSQL_ROOT_PASSWORD=123456
:設(shè)置密碼
5. 安裝成功
最后我們可以通過(guò) docker ps 命令查看容器的運(yùn)行信息
image.png
本機(jī)可以通過(guò) root 和密碼 123456 訪問(wèn) MySQL 服務(wù)沧踏。
docker exec -it my-mysql /bin/bash
mysql -h localhost -u root -p
image.png
6. 問(wèn)題
mysql 最新版本的密碼加密方式默認(rèn)為caching_sha2_password
(老版本的為mysql_native_password
),這會(huì)導(dǎo)致navicat等數(shù)據(jù)庫(kù)工具可能連接不上生闲,我們只需要把密碼加密方式修改為mysql_native_password
就可以了诀诊。
# 查看密碼加密方式
select Host,User,plugin from mysql.user;
新版本密碼加密方式
# 修改加密方式
alter user 'root'@'%' identified with mysql_native_password by '123456';
flush privileges;