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    448MB

第二步运行MySQL容器

[root@localhost ~]# docker run -d -p 3306:3306  -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7
a2e753a4c01a3992e24f08098ca16ebf0ecce01279c88976ce8ad43b5ac0a987

参数作用:

  • -d 后台运行
  • -p 3306:3306 将主机的3306端口与容器的3306端口映射
  • -v /home/mysql/conf:/etc/mysql/conf.d 主机的/home/mysql/conf目录挂载到MySQL容器的配置文件目录,方便修改
  • -v /home/mysql/data:/var/lib/mysql /home/mysql/data目录挂载到MySQL容器的数据库文件目录,防止容器删除导致数据丢失
  • -e MYSQL_ROOT_PASSWORD=123456 设置数据库的密码
  • –name 为容器取名

测试连接MySQL

启动成功后,使用Navicat测试连接

进行验证

我们先来看看我们挂载的/home/mysql目录,可以看到有我们挂载的conf和data两个目录

[root@localhost mysql]# pwd
/home/mysql
[root@localhost mysql]# ls
conf  data

进入data目录看一下,可以看到mysql容器/var/lib/mysql下的文件

[root@localhost mysql]# cd data/
[root@localhost data]# ls
auto.cnf    ca.pem           client-key.pem  ibdata1      ib_logfile1  mysql               private_key.pem  server-cert.pem  sys
ca-key.pem  client-cert.pem  ib_buffer_pool  ib_logfile0  ibtmp1       performance_schema  public_key.pem   server-key.pem

我们在数据库里面创建一个test

然后我们到挂载的/home/mysql/data目录下看test会不会出现

test出现,同步成功

然后我们删除掉这个mysql容器,看看/home/mysql/data下的数据还会不会存在
先查看一下正在运行的所有容器

删除mysql容器

删除后再查看正在运行的容器,mysql被删除

mysql已经删除,我们再来看/home/mysql/data目录

数据依然存在,实验完成

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

(0)

相关推荐

  • Docker 环境运行 Mysql 和开启 Binlog 配置主从同步的设置方法

    同一服务器模拟利用 Docker 模拟 Mysql 设置的主从同步设置. 1.运行起来两个 Mysql :masterMysql(主库).slaveMysql(从库),数据库版本 5.7. #拉取镜像 docker pull mysql:5.7 #y运行主.从容器 docker run -p 13306:3306 --name slavemysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 docker run -p 13307:3306 --name

  • 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之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

  • ktl工具实现mysql向mysql同步数据方法

    使用ktl工具实现mysql向mysql同步数据 1.新建作业步骤 2.完善作业步骤,主要是完成作业中的转换工作 3.首先要确定数据来源库,也就是数据输出库,这里是mysql 4.其次要确定数据接收库,这里也是mysql数据库 5.在作业中点击执行进行数据同步,根据数据量的不同同步时间也不一样. 6.数据同步完成后查看两个mysql数据库中同步的表数据,数据一致同步完成.

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

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

  • 详解使用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并挂载数据的全过程

    目录 一.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中mysql初始化及启动失败问题解决方案

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

  • 实现两台MySQL数据库数据的同步的方法

    1. 安装配置 两台服务器,分别安装好Mysql,都安装在 /usr/local/mysql 目录下(安装步骤省略,请参考相关文档),两台服务器的IP分别是192.168.0.1和192.168.0.2,我们把192.168.0.1作为master数据库,把192.168.0.2作为slave服务器,我们采用单向同步的方式,就是master的数据是主的数据,然后slave主动去master哪儿同步数据回来. 两台服务器的配置一样,我们把关键的配置文件拷贝一下,默认的配置文件是在 /usr/loc

  • python实现MySQL指定表增量同步数据到clickhouse的脚本

    python实现MySQL指定表增量同步数据到clickhouse,脚本如下: #!/usr/bin/env python3 # _*_ coding:utf8 _*_ from pymysqlreplication import BinLogStreamReader from pymysqlreplication.row_event import (DeleteRowsEvent,UpdateRowsEvent,WriteRowsEvent,) import clickhouse_driver

  • 基于Docker的MySQL主从复制环境搭建的实现步骤

    1. 前言 之前的程序架构可能是这样的一种形式: 当程序体量扩大后,我们进行扩展,可能会扩展多个后台服务实例,但数据库还是只有一个,所以系统的瓶颈还是在数据库上面,所以这次的主要任务就是对数据库进行扩展,主要形式为:扩展多台数据库实例,实现读写分离,对于一些写的任务分配到主数据库,对于读的任务使用子数据库进行读取.从而提高系统性能. 修改后的架构如下所示: 2. 环境预搭建 这次使用docker来进行这个环境的搭建,使用MySQL版本为5.7.13. docker pull mysql:5.7.

随机推荐