Docker 安装 MySQL5.7 和 MySQL8

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Docker 安装 MySQL5.7 和 MySQL8

安装 MySQL5.7


拉取镜像

docker pull mysql:5.7

拉下来镜像后 执行 docker images

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


前期准备


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


启动容器


命令如下:

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

docker pull mysql:8.0.25


查看镜像

docker images 


前期准备


需要创建挂载容器

在 /app 下创建 MySQL8


启动容器

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

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
19天前
|
存储 关系型数据库 MySQL
美团面试:MySQL为什么 不用 Docker部署?
45岁老架构师尼恩在读者交流群中分享了关于“MySQL为什么不推荐使用Docker部署”的深入分析。通过系统化的梳理,尼恩帮助读者理解为何大型MySQL数据库通常不使用Docker部署,主要涉及性能、管理复杂度和稳定性等方面的考量。文章详细解释了有状态容器的特点、Docker的资源隔离问题以及磁盘IO性能损耗,并提供了小型MySQL使用Docker的最佳实践。此外,尼恩还介绍了Share Nothing架构的优势及其应用场景,强调了配置管理和数据持久化的挑战。最后,尼恩建议读者参考《尼恩Java面试宝典PDF》以提升技术能力,更好地应对面试中的难题。
|
10天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
81 42
|
11天前
|
关系型数据库 MySQL 数据库
Docker下Mysql8数据备份与恢复
通过以上步骤,您可以在Docker环境下高效地备份和恢复MySQL 8数据库。备份数据时,使用 `mysqldump`工具生成逻辑备份文件,并存储到指定目录;恢复数据时,使用 `mysql`工具从备份文件中读取数据并恢复到数据库。自动化脚本和定时任务的配置可以进一步简化备份和恢复的管理过程。
72 41
|
3天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
51 20
|
14天前
|
Linux Docker 容器
安装docker-18.06报错Error: libseccomp conflicts with docker-18.06
通过这些步骤,您可以成功在CentOS上安装Docker 18.06,并解决libseccomp的冲突问题。这些方法确保系统兼容性,并保证Docker的正常运行。
52 27
|
4天前
|
Ubuntu API 网络虚拟化
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
89 15
|
2天前
|
消息中间件 Kafka Docker
docker compose 安装 kafka
通过本文的步骤,您可以快速在本地使用 Docker Compose 安装并配置 Kafka 和 Zookeeper。Docker Compose 简化了多容器应用的管理,方便快速搭建和测试分布式系统。
26 2
|
23天前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
1天前
|
关系型数据库 MySQL 网络安全
如何排查和解决PHP连接数据库MYSQL失败写锁的问题
通过本文的介绍,您可以系统地了解如何排查和解决PHP连接MySQL数据库失败及写锁问题。通过检查配置、确保服务启动、调整防火墙设置和用户权限,以及识别和解决长时间运行的事务和死锁问题,可以有效地保障应用的稳定运行。
40 25