docker 挂载MySQL实现数据持久化的实现

目录
  • 环境配置
  • MySQL数据持久化
  • 注意事项

环境配置

本地操作系统:Win10
虚拟机的操作系统:CentOS Stream 8
已安装docker,可以参考详细安装教程

MySQL数据持久化

在上一节中我们已实现docker启动多个MySQL服务,当误删docker之后,docker里面运行的数据将无法保存。为了能保存docker里面运行的数据,需要使用docker挂载功能,将docker里面的数据保存在系统的本地目录,即使删掉docker仍能保存之前的数据。
挂载MySQL实现数据持久化可以执行以下指令:

docker run --name mysql10 -p 3306:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234 -d mysql

指令参数说明:

  • –name mysql10:docker容器名称。
  • -p 3306:3306:本地系统与docker对接端口。
  • -v /home/mysql/conf:/etc/mysql/conf.d:将docker的MySQL的配置文件/etc/mysql/conf.d挂载到本地的/home/mysql/conf文件夹。
  • -v /home/mysql/data:/var/lib/mysql:将docker的MySQL的数据/var/lib/mysql挂载到本地的/home/mysql/data文件夹。
  • -e MYSQL_ROOT_PASSWORD=1234是设置docker的MySQL的root用户密码。
  • -d mysql:是镜像名称,如果没有规定MySQL版本,使用mysql默认安装最新版本,如果规定mysql版本,可以加上版本信息,如-d mysql5.7。

执行上述指令后,打开本地系统的就能看到文件夹信息,如图所示:

注意事项

如果在系统中开启多个docker的MySQL服务,挂载本地目录应不要相同,否则可能导致数据混乱。
当删除docker之后,只要挂载本地系统的文件数据还存在,开启新的docker并挂载原有的文件数据仍能找回之前被删除docker的数据记录。

到此这篇关于docker 挂载MySQL实现数据持久化的实现的文章就介绍到这了,更多相关docker MySQL数据持久化内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解使用Docker部署MySQL(数据持久化)

    本文简述如何使用Docker部署mysql,同时持久化数据.我们会用到tutum-docker-mysql 这个项目来搭建一个mysql,省去重头写Dockerfile的时间. 首先我们将tutum-docker-mysql跑起来. docker run -d -p 3306:3306 --name mysql tutum/mysql 如果你本地没有tutum/mysql的image,docker会先下载它的image,这一步可能会用些时间.待执行完毕我们检查一下应该会有如下样子 tutum-d

  • docker 挂载MySQL实现数据持久化的实现

    目录 环境配置 MySQL数据持久化 注意事项 环境配置 本地操作系统:Win10虚拟机的操作系统:CentOS Stream 8已安装docker,可以参考详细安装教程 MySQL数据持久化 在上一节中我们已实现docker启动多个MySQL服务,当误删docker之后,docker里面运行的数据将无法保存.为了能保存docker里面运行的数据,需要使用docker挂载功能,将docker里面的数据保存在系统的本地目录,即使删掉docker仍能保存之前的数据.挂载MySQL实现数据持久化可以执

  • docker之MySQL同步数据的实现

    目录 第一步先获取镜像,版本选择了MySQL5.7 第二步运行MySQL容器 测试连接MySQL 进行验证 实验的过程分为4步: 获取mysql镜像 运行一个mysql容器 测试连接mysql 验证 第一步先获取镜像,版本选择了MySQL5.7 [root@localhost ~]# docker pull mysql:5.7 [root@localhost ~]# docker images |grep mysql mysql 5.7 c20987f18b13 2 months ago 448

  • docker实现MySQL数据同步的方法

    大家好,今天分享一下docker的一个实战 我们使用docker 实现MySQL 的数据同步 搜索mysql 镜像 [root@localhost ~]# docker search mysql NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysql MySQL is a widely used, open-source relation- 12222 [OK] mariadb MariaDB Server is a high performing ope

  • Docker安装部署Mysql8的过程(以作数据持久化)

    目录 1.创建容器并进行持久化处理 2.配置远程连接并尝试 1.创建容器并进行持久化处理 #拉取镜像 docker pull mysql:8.0.20 #启动镜像,用于拷贝配置文件到宿主机 docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.20 #查看是否启动成功 docker ps -a #新建挂载目录并拷贝配置文件 mkdir -p /mysqldata/ docker cp mys

  • docker下mysql 8.0.20 安装配置方法图文教程

    docker安装mysql版本8.0.20,供大家参考,具体内容如下 第一步 下拉镜像 docker pull mysql:8.0.20 第二步 启动镜像 docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.20 查看是否启动成功 docker ps -a 第三步 启动成功后,进入容器内部拷贝配置文件,到宿主主机. docker cp mysql:/etc/mysql /mnt/sda1/

  • docker中mysql初始化及启动失败问题解决方案

    最近做项目,遇到这样问题,docker 中的mysql 不能启动,经过上网查资料,终于解决了这个问题,这里记录下,也许还能帮助到大家, 在docker中有一个mysql服务,其数据文件是挂在在主机外面的文件,在docker中的root有访问该数据文件的权限,但是docker中mysql访问数据文件的时候提示权限不足,于是只有以root用户来启动mysql了. 数据初始化: mysql_install_db --user=root --explicit_defaults_for_timestamp

  • Docker挂载资料卷保存MySQL数据

    简介 docker是运行在虚拟环境中的,这样会有一个问题,那就是储存在docker内的数据会随着docker的重启.宕机而丢失,从而造成不可估量的损失. 所以docker提供了-v指令,可以将容器内的目录以及文件映射到外部文件系统,容器启动时会读取外部文件系统,从而保证数据的完整性. mysql作为最流行的数据库之一,使用范围十分广泛,如果部署在docker却无法持久化怎么办呢?今天就来说一下mysql资料卷. MySql资料卷 mysql需要保存的只有两种文件:数据和配置文件.mysql的默认

  • Docker搭建MySQL并挂载数据的全过程

    目录 一.Docker搭建MySQL并挂载数据 二.挂载是否生效 其他 总结 记录 Docker 搭建 MySQL 并挂载数据过程,搭建过程参考自 Docker Hub. 一.Docker搭建MySQL并挂载数据 1.首先安装好 Docker,不知道怎么安装的可以看下 CentOS7安装Docker初体验. 2.下载 MySQL5.7 镜像. docker pull mysql:5.7 3.创建容器并挂载数据. docker run -d --restart=always --name mysq

  • 浅谈Docker数据持久化

    容器中数据持久化主要有两种方式: 数据卷(Data Volumes) 数据卷容器(Data Volumes Dontainers) 数据卷 数据卷是一个可供一个或多个容器使用的特殊目录,可以绕过UFS(Unix File System). 数据卷可以在容器之间共享和重用 对数据卷的修改会立马生效 对数据卷的更新,不会影响镜像 数据卷默认会一直存在,即使容器被删除 一个容器可以挂载多个数据卷 注意:数据卷的使用,类似于 Linux 下对目录或文件进行 mount. 创建数据卷 示例: docker

随机推荐