mysql 备份软件 Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别

今天在操作 innobackupex 的时候,执行 change master to 的时候发现  xtrabackup_binlog_pos_innodb   xtrabackup_binlog_info 两个文件对应的master 的 binary log 位置不一致: 

less xtrabackup_binlog_info  mysql-bin.002961 70176740

less xtrabackup_binlog_pos_innodb  mysql-bin.002961 38716155

后面我就找了下这两个参数究竟是有什么区别

1.官网上的定义:

xtrabackup_binlog_pos_innodb containing the position of the binary log at the moment of backing up relative to InnoDB transactions;

xtrabackup_binlog_info containing the position of the binary log at the moment of backing up;

2.别人的讲述:

这是另外一个人的博客讲述:http://julyclyde.org/?p=403

3.官网上的一种做法:

How to setup a slave for replication in 6 simple steps with Percona XtraBackup

4.个人理解:

1)官网上的demo 是 cat /var/lib/mysql/xtrabackup_binlog_info  TheMaster-bin.000001     481 ,并且是第一个二进制日志,所以很有可能  xtrabackup_binlog_pos_innodb   xtrabackup_binlog_info 记录的是相同的二进制位置。
2)我首先根据官网上的操作按照 xtrabackup_binlog_info 记录的 mysql-bin.002961 70176740 来执行 change master to *** master_log_file=‘mysql-bin.002961‘,master_log_pos=70176740 *** ,在执行 show slave status \G 的时候发现下面的错误:
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: ‘Client requested master to start replication from impossible position; the first event ‘mysql-bin.002961‘ at 70176740, the last event read from ‘/home/mysql/node-2/mysql-bin.002961‘ at 4, the last byte read from ‘/home/mysql/node-2/mysql-bin.002961‘ at 4.‘

3)本人 stop slave ,然后按照 xtrabackup_binlog_pos_innodb 记录的位置 38716155 执行了 下面的命令, start slave 以后,结果显示正常,
change master to *** master_log_file=‘mysql-bin.002961‘,master_log_pos=38716155***
我用的版本是Xtrabackup-1.6.7, 从这个里面可以看出,要保证有 InnoDB 的事务也能够正常的从 master 获取binary log ,应该是按照 xtrabackup_binlog_pos_innodb 记录的位置来的,而且通过 innobackupex 的 copy-back 命令执行以后, 数据目录(参数文件里面配置的 datadir 目录)下只有 xtrabackup_binlog_pos_innodb,并没有 xtrabackup_binlog_info  这个文件。

$ ls
ibdata1      mysql             mysqld.log               mysqld-relay-bin.index  relay-log.info  ***
ib_logfile0  mysql-bin.000001  mysqld.pid               mysqld.sock             test            ****
ib_logfile1  mysql-bin.000002  mysqld-relay-bin.000006  mysql-slow.log          ***      xtrabackup_binlog_pos_innodb
master.info  mysql-bin.index   mysqld-relay-bin.000007  performance_schema      ***      xtrabackup_checkpoints
5.我平时的做法:

我总是执行到 copy-back 以后,然后 查看 datadir 目录下的 xtrabackup_binlog_pos_innodb binary log  position 。然后执行 change master 命令 。今天偶尔的去看备份目录下有两个 xtrabackup_binlog_pos 相关的文件,结果还不一致,最终导致了上面的错误。
6.个人总结:可能我用的是低版本的原因,在高版本上的解释如下 http://www.percona.com/doc/percona-xtrabackup/2.1/xtrabackup_bin/working_with_binary_logs.htmlhttp://www.percona.com/doc/percona-xtrabackup/1.6/xtrabackup_bin/working_with_binary_logs.html
 If your backup is from a server with binary logging enabled, xtrabackup will create a file named xtrabackup_binlog_info in the target directory. This file contains the binary log file name and position of the exact point in the binary log to which the prepared backup corresponds.

You will also see output similar to the following during the prepare stage:

.....
This output can also be found in the xtrabackup_binlog_pos_innodb file, but it is only correct when no other than XtraDB or InnoDB are used as storage engines.

If other storage engines are used (i.e. MyISAM), you should use the xtrabackup_binlog_info file to retrieve the position.

这是 Xtrabackup 2.1 上面的解释 (1.6 上面的也是类似的), 这个意思和我理解的正好相反,他们建议采用的是  xtrabackup_binlog_info 上面记录的二进制日志位置,可是事实上我每次都采用的是  xtrabackup_binlog_pos_innodb (大部分情况下两个文件记录的位置是相同的),并且并没有出错过。

个人感觉采用 xtrabackup_binlog_pos_innodb  靠谱,不知道你们是采用哪个位置?如果有什么疑问,可以提出来大家一起探讨。

时间: 2024-10-13 21:30:02

mysql 备份软件 Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别的相关文章

MySQL备份恢复之XtraBackup

一. 简介 我们知道,针对InnoDB存储引擎,MySQL本身没有提供合适的热备工具,ibbackup虽是一款高效的首选热备方式,但它是是收费的.好在Percona公司给大家提供了一个开源.免费的Xtrabackup热备工具,它可实现ibbackup的所有功能,并且还扩展支持真正的增量备份功能,是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup包括两个主要工具:Xtrabackup和innobackupex: Xtrabackup只能备份InnoDB和Xtr

mysql备份之xtrabackup

mysql备份之xtrabackup(建议用来备份innodb) 下载地址:https://www.percona.com/downloads/XtraBackup/ 安装xtrabackup [[email protected] ~]# yum install percona-xtrabackup 完全备份 节点一 修改配置文件,设置为每张表单独一个表空间,此项必须在安装数据库的时候就设置 [[email protected] ~]# vim /etc/my.cnf [mysqld] inno

mysql备份实战-Xtrabackup工具备份

导读 大数据量备份与还原,始终是个难点.当MYSQL超10G,用mysqldump来导出就比较慢了.这里介绍一个强大的开源工具Xtrabackup. Xtrabackup简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具,是商业备份工具InnoDB Hotbackup的一个很好的替代品.特点: (1)备份过程快速.可靠: (2)备份过程不会打断正在执行的事务: (3)能够基于压缩等

数据导数据工具xtrabackup之xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info区别

使用xtrabackup工具的innobackupex脚本备份数据时,准备备份--apply-log innobackupex --apply-log /datapath命令执行后 备份数据里会有两个文件说明备份数据对应的binlog的文件名和位置,xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info,具体区别: 对于纯INNODB操作,备份出来的数据中上述两个文件的内容是一致的 对于Innodb和非事务存储引擎混合操作,xtrabackup_b

MySQL备份工具XtraBackup的使用

xtrabackup简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具.特点: (1)备份过程快速.可靠: (2)备份过程不会打断正在执行的事务: (3)能够基于压缩等功能节约磁盘空间和流量: (4)自动实现备份检验: (5)还原速度快: 官方下载地址:地址,你可以通过此链接下载最新版. #wget https://www.percona.com/downloads/XtraBac

MySQL备份恢复工具xtrabackup

1.简介 XtraBackup是Percona提供的一个开源的.免费的MySQL数据库备份工具,它能够对InnoDB和XtraDB数据库进行热备份,据官方介绍,XtraBackup具有以下特点: 1. 备份过程快速.可靠: 2. 备份过程不会打断正在执行的事务: 3. 能够基于压缩等功能节约磁盘空间和流量: 4. 自动实现备份检验: 5. 恢复速度快. 2.安装XtraBackup 最新版本可以从https://www.percona.com/software/percona-xtrabacku

(4.2)mysql备份还原——备份概述

1.什么情况下会用到备份呢? [1.1]灾难恢复 [1.2]单位审计:数据库在过去某一个点是什么样的 [1.3]跨机房灾备:异地备份 [1.4]认为的DDL或者DML语句,导致主从库的数据消失 [1.5]业务测试,构建测试库 2.备份的分类 分为冷备份.温备份.热备份 [2.1]冷备份(离线备份:读写操作均中止) 优点:设备投资较少,节省费用,对环境要求不高. 缺点:恢复时间较长,一般要数天至1周,数据完整性与一致性比较差: [2.2]温备份(只可以执行读操作) 优点:设备投资较少,节省费用,对

bat批处理实现mysql备份

一.新建bat文件,实现mysql备份功能.(即把txt文件后缀改为.bat) 代码解释: d:                                                                                    //选择d盘cd "D:\MySQL\MySQL Server 5.5\bin" //进入mysql安装目录下的bin文件set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

使用Xtrabackup进行MySQL备份:

一.安装 1.简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具.特点: (1)备份过程快速.可靠: (2)备份过程不会打断正在执行的事务: (3)能够基于压缩等功能节约磁盘空间和流量: (4)自动实现备份检验: (5)还原速度快: 2.安装 其最新版的软件可从 http://www.percona.com/software/percona-xtrabackup/ 获得.本文基于R