MySQL——GTID复制如何用xtrabackup恢复数据库

背景

我们的数据库使用的是GTID复制,今天老任为了避免单点利用备份文件恢复搭建从库的时候遇到了一些问题,所以就写了这篇笔记,加深学习理解。
大家都知道,在搭建从库的时候,基本都是利用最近的一份xtrabackup备份文件,解压 apply对应的log之后会生成下图的一些相关文件。

#可以看到解压应用后的关于备份位点信息的文件如下图所示
$ ls -l xtrabackup*
-rw-r--r--. 1 mysql mysql          400 8月  11 21:25 xtrabackup_binlog_info
-rw-r--r--. 1 mysql mysql           27 8月  12 01:19 xtrabackup_binlog_pos_innodb
-rw-r-----. 1 mysql mysql          107 8月  12 01:19 xtrabackup_checkpoints
-rw-r--r--. 1 mysql mysql         1024 8月  11 21:03 xtrabackup_info
-rw-r--r--. 1 mysql mysql 143608250368 8月  12 01:19 xtrabackup_logfile
-rw-r--r--. 1 mysql mysql            1 8月  12 01:19 xtrabackup_master_key_id
-rw-r--r--. 1 mysql mysql           39 8月  12 01:19 xtrabackup_tablespaces

这里重点说我们要用到的文件,其他可以自行百度:

  • xtrabackup_binlog_info 这个是我们主要用到文件,会记录一些位点信息以及gtidset信息,在主库备份就用这个文件
  • xtrabackup_slave_info 这个文件虽然图上没有,但是这个文件如果在slave上备份并且加上了--slave-info的话,就会生成该文件,我们也将使用该文件。

简单总结来说:

  1. 在主库上做了xtrabackup备份,就用xtrabackup_binlog_info里面的文件和位点以及GTID set进行change master搭建从库
  2. 在从库上做xtrabackup备份的话,而且加上了---slave-info的话,就是用xtrabackup_slave_info文见里面的东西change master。

正文

好了上面只是简单介绍了一下背景,这里开始介绍我们恢复的流程

1.查看位点以及gtid set
$ cat xtrabackup_binlog_info
mysql-bin.001460	225454	dd3ce11f-30f4-11ea-86b2-42010a8e0014:1-1211761271

#搭建同步
#两种方法
2.1 传统方法
使用binlog+位点的方式 change master去恢复

2.2基于GTID复制的恢复(老任使用的方法)
#清空当前机器保留的GTID_executed和gtid_purged值
>reset master;
#设置gtid_purged变量为xtrabackup_binlog_info文件中的值
sql>set global gtid_purged='dd3ce11f-30f4-11ea-86b2-42010a8e0014:1-1211761271'; 
#搭建复制,不需要指定位点和密码
sql>CHANGE MASTER TO
  MASTER_HOST='$IP',
  MASTER_USER='$DBuser,
  MASTER_PASSWORD='$PASS',
  MASTER_PORT=$Port,
    MASTER_AUTO_POSITION=1;
sql> start slave;
sql>show slave status\G;
#查看复制状态是否正常就结束了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

渔不是鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值