一、查找Docker Hub上的Mysql镜像
docker search mysql
二、拉取官方的镜像
#拉取官方的镜像,标签默认为latest
docker pull mysql
三、运行容器
## docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
-
-p 3306:3306
:将容器的3306端口映射到主机的3306端口 -
-e MYSQL_ROOT_PASSWORD=123456
:设置 MySQL 服务root
用户的密码。
四、查看容器启动情况
docker ps
五、连接、查看容器
# docker run -it redis:latest redis-cli -h [主机IP]
# 执行redis-cli命令连接到刚启动的容器,主机IP为 172.17.0.1
docker run -it redis:latest /bin/bash
# docker exec -it [CONTAINER ID] redis-cli -h [主机IP] -p [端口号] -a [PassWord]
docker exec -it b5336d8ee535 /bin/bash
mysql -u root -p
123456
六、navicat连接该mysql出现Authentication plugin 'caching_sha2_password' cannot be loaded
处理
MySQL8.0之后的加密规则为caching_sha2_password,需要修改加密规则
# 进入docker 下的 mysql
docker exec -it [CONTAINER ID] /bin/bash
# 登录mysql,进入到mysql中
mysql -t root -p 123456
# 修改加密规则 设置新密码
# 用户域 %: 全部 localhost:只允许本地
## ALTER USER '账号'@'用户域' IDENTIFIED WITH mysql_native_password BY '新密码';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
# 刷新权限
FLUSH PRIVILEGES
七、修改mysql配置文件
# 1、进入需要修改的镜像
docker exec -it [CONTAINER ID] /bin/bash
# 2、进入要修改的文件目录
cd /etc/mysql
# 3、安装vim
# 如果不安装vim在使用vim的时候会报找不到,在修改docker中mysql的配置文件,无法使用vi命令。
apt-get update
apt-get install vim
# 4、修改my.cnf配置文件
vi my.cnf
# 5、退出容器
## 退出并停止容器
Ctrl + d
## 退出并在后台运行容器
Ctrl + p + q
# 6、重启docker容器
docker restart [CONTAINER ID]