Docker—MySQL数据持久化

我们可以将mysql在docker容器中进行部署,然后使用数据卷挂载的方式将mysql的数据持久化到时宿主机
首先我们拉去mysql的镜像(这里以mysql:8.0.26为例子)

docker pull mysql:8.0.26

启动容器

docker run --name mysql-test -d -p 3333:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.26

命令释义:

命令释义
–name mysql-test对容器的命名
-d后台运行
-p 3333:3306对外暴露端口号3333
-v /home/mysql/conf:/etc/mysql/conf.d配置文件挂载到当前宿主机的/home/mysql/conf
-v /home/mysql/data:/var/lib/mysql数据挂载到当前宿主机的 /home/mysql/data
-e MYSQL_ROOT_PASSWORD=123456设置mysql的root用户的密码是:123456

完成容器启动命令后,可以看到本地 /home/mysql/data 目录已经有mysql数据库的文件信息了,可以使用数据库连接工具连接mysql,然后创建数据库和数据表。就会发现在 /home/mysql/data 目录中有对应数据库名称的文件夹,以及文件夹中对应数据表的一个 .ibd 文件。
在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐