Docker 安装 MySQL5.7 和 MySQL8

文章目录

安装 MySQL5.7

拉取镜像

shell 复制代码
docker pull mysql:5.7

拉下来镜像后 执行 docker images

此时我们已经有这个镜像了。

前期准备:

在根目录下创建 app , 在 app 目录下创建 mysql57 文件夹。

启动容器

命令如下:

shell 复制代码
docker run -d -p 3306:3306 \
           --privileged=true \
		   --restart=always \
           -v /app/mysql57/log:/var/log/mysql \
           -v /app/mysql57/data:/var/lib/mysql \
           -v /app/mysql57/conf:/etc/mysql/conf \
           -e MYSQL_ROOT_PASSWORD=你的密码 \
           -e TZ=Asia/Shanghai \
           --name mysql57 \
           mysql:5.7

参数说明:
-d:将容器在后台运行(以分离模式运行)。
-p 3306:3306:将宿主机的 3306 端口映射到容器的 3306 端口,这样可以通过宿主机的 3306 端口访问 MySQL 服务。
--privileged=true:给容器权限特权,允许容器内进程拥有访问主机的权限。
--restart=always:设置容器总是自动重启。
-v /app/mysql57/log:/var/log/mysql:将宿主机的 /app/mysql57/log 目录挂载到容器的 /var/log/mysql 目录,用于存储 MySQL 日志文件。
-v /app/mysql57/data:/var/lib/mysql:将宿主机的 /app/mysql57/data 目录挂载到容器的 /var/lib/mysql 目录,用于存储 MySQL 数据库文件。
-v /app/mysql57/conf:/etc/mysql/conf:将宿主机的 /app/mysql57/conf 目录挂载到容器的 /etc/mysql/conf 目录,用于存储 MySQL 的配置文件。
-e MYSQL_ROOT_PASSWORD=你的密码:设置 MySQL 的 root 用户密码为指定的密码 (将 '你的密码' 替换为你自己的密码)。
-e TZ=Asia/Shanghai:设置容器中的时区为亚洲/上海时区。
--name mysql57:为容器指定一个名字,这里将容器命名为 mysql57。 mysql:5.7:指定所使用的 MySQL 的镜像和版本。

执行:

执行后会出现该容器的 唯一id。

执行 docker ps 命令:

这样 MySQL57就启动成功了。

然后用客户端去连接MySQL就行了 。注意:连接前确保防火墙放开了相关的端口。

安装MySQL8.0

拉取镜像

执行 docker pull mysql:8.0.25

shell 复制代码
docker pull mysql:8.0.25

查看镜像

shell 复制代码
docker images 

前期准备

需要创建挂载容器

在 /app 下创建 MySQL8

启动容器

shell 复制代码
docker run -d -p 3307:3306 \
	--restart=always \
	--privileged=true \
	-v /app/mysql8/log:/var/log/mysql \
	-v /app/mysql8/data:/var/lib/mysql \
	-v /app/mysql8/conf:/etc/mysql/conf \
	-v /app/mysql8/mysql-files:/var/lib/mysql-files \
	-e MYSQL_ROOT_PASSWORD=你的密码\
	-e TZ=Asia/Shanghai \
	--name mysql8 \
	mysql:8.0.25

启动:

docker ps 查看开启的容器

这样 MySQL8 就启动成功了。

然后用客户端去连接MySQL就行了 。注意:连接前确保防火墙放开了相关的端口。

这样 MySQL5.7 和 MySQL8 的启动就OK 了。

相关推荐
SaebaRyo12 分钟前
MySQL常见写法
后端·mysql·docker
a_j581 小时前
k8s面试题总结(十四)
docker·容器·kubernetes
wanhengidc1 小时前
物理服务器是指的什么?
运维·服务器
思考的Joey1 小时前
Docker入门:手把手教你前端容器化部署全流程
前端·docker·devops
solomonzw1 小时前
linux学习(十三)(shell编程(文字,变量,循环,条件,调试))
linux·运维·学习
网安墨雨1 小时前
网络安全之命令
java·运维·web安全
精致懒洋洋3 小时前
安装Docker环境并实战应用Docker部署nginx服务(详细教程)
docker
矛取矛求4 小时前
Docker 实践与应用举例
docker
他不爱吃香菜4 小时前
HTTPS工作原理与安全机制详解(仅供参考)
运维·网络·信息与通信
cdut_suye4 小时前
全面剖析 Linux 进程管理与 PCB 机制
java·linux·运维·服务器·c++·人工智能·python