天天看点

Docker安装mysql 8.0.20 版本

作者:臭猪比

第一步 下拉镜像

docker pull mysql:8.0.20           
Docker安装mysql 8.0.20 版本

第二步 启动镜像

docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456  -d mysql:8.0.20           

查看是否启动成功

docker ps -a           
Docker安装mysql 8.0.20 版本

拷贝容器的 /etc/mysql目录到 主机目录/mnt/sda1/mysql8.0.20

第三步 启动成功后,进入容器内部拷贝配置文件,到宿主主机

docker cp  mysql:/etc/mysql /mnt/sda1/mysql8.0.20           
Docker安装mysql 8.0.20 版本

拷贝容器的 /etc/mysql目录到 主机目录/mnt/sda1/mysql8.0.20

第四步 删除mysql容器,重新创建容器

docker stop mysql           

先停止容器

Docker安装mysql 8.0.20 版本

再删除容器

docker rm mysql           
Docker安装mysql 8.0.20 版本

第五步 启动mysql ,挂载配置文件,数据持久化到宿主主机

启动脚本 文件名为mysql8.0.20.sh

#!/bin/sh
docker run \
-p 3306:3306 \
--name mysql \
--privileged=true \
--restart unless-stopped \
-v /mnt/sda1/mysql8.0.20/mysql:/etc/mysql \
-v /mnt/sda1/mysql8.0.20/logs:/logs \
-v /mnt/sda1/mysql8.0.20/data:/var/lib/mysql \
-v /etc/localtime:/etc/localtime \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0.20           

命令解释:

-p 端口映射
--privileged=true 挂载文件权限设置
--restart unless-stopped 设置 开机后自动重启容器
-v/mnt/sda1/mysql8.0.20/mysql:/etc/mysql 挂载配置文件
-v/mnt/sda1/mysql8.0.20/logs:/logs 挂载日志
-v/mnt/sda1/mysql8.0.20/data:/var/lib/mysql \ 挂载数据文件 持久化到主机,
-v/etc/localtime:/etc/localtime 容器时间与宿主机同步
-e MYSQL_ROOT_PASSWORD=123456 设置密码
-d mysql:8.0.20 后台启动,mysql