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

相关推荐
运维&陈同学38 分钟前
【zookeeper01】消息队列与微服务之zookeeper工作原理
运维·分布式·微服务·zookeeper·云原生·架构·消息队列
是阿建吖!39 分钟前
【Linux】进程状态
linux·运维
明明跟你说过1 小时前
Linux中的【tcpdump】:深入介绍与实战使用
linux·运维·测试工具·tcpdump
O&REO1 小时前
单机部署kubernetes环境下Overleaf-基于MicroK8s的Overleaf应用部署指南
云原生·容器·kubernetes
运维小文2 小时前
K8S资源限制之LimitRange
云原生·容器·kubernetes·k8s资源限制
登云时刻2 小时前
Kubernetes集群外连接redis集群和使用redis-shake工具迁移数据(二)
redis·容器·kubernetes
Mr_Xuhhh2 小时前
重生之我在学环境变量
linux·运维·服务器·前端·chrome·算法
朝九晚五ฺ10 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
Kkooe11 小时前
GitLab|数据迁移
运维·服务器·git
wuxingge11 小时前
k8s1.30.0高可用集群部署
云原生·容器·kubernetes