Centos7下基于docker的mysql数据库主从备份操作

前言

本文章主要介绍如何实现mysql数据库主从备份操作。首先要了解的mysql主从备份的原理。

简单原理

mysql中每一次针对数据库的操作都在被记录在二进制日志文件中,只要从库去读取主库的日志文件就能将主库的操作还原到从库中。

本文环境
  1. 两台centos7虚拟机
  2. 虚拟机上均安装了docker
  3. docker里面均运行最新mysql容器
  4. 容器文件映射关系如下图
    在这里插入图片描述

正文

1、配置主库

由于mysql运行在容器中,而容器中修改文件比较麻烦,所以将需要用到的配置文件映射出来了:/etc/my.cnf文件。下面就是主库的配置文件信息

[mysqld]
server_id = 1
log-bin = mysql-bin
read-only = 0
binlog_format = ROW
binlog_row_image = minimal
binlog-do-db = eams
2、重启docker
docker restart mysql
3、进入mysql配置从库同步账号
mysql>create user username identified with mysql_native_password by 'password';
mysql>grant replication slave on *.* to username;
mysql>flush privileges;
4、配置从库
[mysqld]
server_id = 2
binlog_format = ROW

其实此处的从库可以不用配置,主要就是为了将server_id设置成和主库不一样,不然的话后面会报错。

5、重启从库docker
docker restart mysql
6、查看主库的日志状态
mysql>show master status \G;

在主mysql中执行上述代码,得到下图
在这里插入图片描述
保存得到的结果,配置从库的时候需要用到。

7、配置从库需要同步的主库信息
mysql>change master to master_host='主库数据库IP',master_user='第三步配置的账号',master_password='第三步配置的账号',master_log_file='第六步结果的文件名称',master_log_pos=第六步结果的position,master_port=主库数据库端口号;
8、启动同步操作
mysql>start slave;

在从库执行上述命令

9、查看同步状态
mysql>show slave status \G;

在从库执行上述命令
在这里插入图片描述
如果上诉两个都是yes,则表明主从设置成功。主库里面进行的任意操作都会同步到从库中。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值