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

!在这里插入图片描述(https://img-blog.csdnimg.cn/direct/8bca3aa375b748c3b728594d39a55ac7.png

#pin_center)

查看镜像

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 了。

相关推荐
阿成学长_Cain27 分钟前
Linux dirs命令详解|Bash目录堆栈管理快速切换目录实战教程
linux·运维·前端·数据库
小羊Yveesss1 小时前
2026年微信小程序后端怎么搭建?后台、数据、接口和运维怎么选
运维·微信小程序·小程序
想你依然心痛2 小时前
嵌入式Linux安全加固:SELinux、Capabilities与Seccomp——强制访问控制与沙箱
linux·运维·安全
AAA@峥4 小时前
容器数据不丢失:Docker 分层存储 + Volume 共享、备份迁移完整指南
运维·docker·容器
MDM.Plus4 小时前
苹果MDM技术演进:从远程控制到设备信任体系的构建
运维·服务器·安全·ios·mdm·手机店
REDcker4 小时前
macOS 挂载 Linux 远程目录详解
linux·运维·macos
2601_961593424 小时前
Mac 上搭建Linux环境吗?VMware + CentOS Stream 9 镜像快速部署
linux·运维·ide·macos·centos
写代码的学渣4 小时前
Linux systemd 开机启动日志逐行详细解析报告
linux·运维·服务器
田里的水稻5 小时前
EP_XML\JSON配置文件和YAML
xml·运维·人工智能·机器人·自动驾驶·json
十年磨一剑~5 小时前
docker 为何每次 docker tag才能 docker push
docker·容器·eureka