天天看点

xtrabackup新版详细说明

http://www.cnblogs.com/billyxp/p/5305676.html

xtrabackup新版详细说明

Percona Xtrabackup 2.4.1

编译及软件依赖

centos5,6 需要升级cmake至2.8.2版本以上,解决:安装cmake版本3.4.3测试通过

centos5 gcc g++ 需要升级gcc至4.4以上上 ,解决:安装4.4.7测试通过

另外xtrabackcup另外Boost版本需要1.59.0版本或以上,目前centos5,6默认是1.41.0。解决:升级至1.59.0

GTID支持情况

测试5.6,5.7开启GTID下可以正常备份,还原

对MySQL5.5,MySQL5.6版本支持

5.6在开启和关闭gtid模式下都可以正常备份还原

5.5可以正常备份还原

5.6部分表导出还原测试正常

对现有版本结合新特性的建议

目前线上版本大部分在1.6.3和1.5版本。很多需求是通过第三方工具支持。结合2.4.1的新特性和release历史和目前情况,建议几点如下:

* xtrabackup支持非Innodb表备份,并且Innobackupex在下一版本中移除,建议通过xtrabackup替换innobackupex

* 流式备份通过--stream指定格式为xbtream而替代tar,支持streaming格式的并行备份和压缩

* 之前脚本使用第三方压缩工具pbzip2进行压缩。建议通过--compress 和--compress-threads选项进行并行压缩

* 指定--safe-slave-backup,增加备份的一致性。(这个选项停止SQL线程并且等到show status中的slave_open_temp_tables为0的时候开始备份,如果没有打开临时表,bakcup会立刻开始,否则SQL线程启动或者关闭知道没有打开的临时表。如果slave_open_temp_tables在--safe-slave-backup-timeount(默认300秒)秒之后不为0,从库sql线程会在备份完成的时候重启)

* 指定--rsync选项,加速备份过程 (为了加速备份过程,同时减小FLUSH TBALES WITH READ LOCAK阻塞写的时间,当该选项指定时innobackupex使用rsync拷贝所有的非InnoDB文件替换cp。尤其适用于有大量的库和表的时候会更快。innobackup会调用rsync两次。1、执行flush tables with read lock前后 ;2、减少读锁被持有的时间内。因为第一调用在刷新读锁之前,所以它仅仅同步那些非事务的数据的变化)

* 针对紧凑备份和增量备份在虽然某些场景下非常有用,与刘伟商讨过暂时继续先不做计划做到统一版本中去

release历史

2.4.1 支持MySQL5.7(5.7.10)

2.3.2 命令行语法跟随MySQL5.6的变化而变化。另外命令行支持--datadir

2.3.1 innobackupex脚本用c重写,并且只是xtrabackup的符号连接。innobackupex支持2.2版本所有的特性,但是目前已降级在下个Major版本中移除,innobackupex将不支持所有新特性的语法,同时xtrabackup现在支持MyISAM的拷贝并且支持innobakcupex的所有特性。innobackupex先前特性的语法xtrabackup同样支持

2.2.21 支持5.6(基于5.6.24版本)

2.2.8 基于5.6.22 (解决当总redo log超过4G,prepare会失败的问题)

2.2.6 通过show variables读取Mysql选项。在初始化表扫描的时候输出更详细信息

2.2.5 基于5.6.21

2.2.1 移除xtrabackup_56 xtrabakcup_55,只保留xtrabakcup.移除Build脚本,支持cmake编译。基于5.6.16

2.1.6 innobackupex --force-non-empty-directories

2.1.4 MySQL versions 5.1.70, 5.5.30, 5.6.11 

innobackupex --no-lock ,拷贝非Innodb数据时不停止复制线程,但是条件是备份期间非事务型表上不能有DDL或者DML操作

innobackupex --decrypt and innobackupex --decompress,

2.1.1 支持紧凑备份,加密备份。不在支持5.0内置Innodb和5.1内置Innoddb。移除--remote-host选项

2.1.0 支持mysql5.6的所有特性(GTID, 可移动表空间,独立undo表空间,5.6样式的buffer pool导出文件)

支持5.6引入的innodb buffer pool预载。buffer pool dumps可以生成或者导入加速启动。在备份时buffer pool dump拷贝到备份目录,在还原阶段拷贝回data目录,

--log-copy-interval 可配置log拷贝线程检查的间隔时间

如果开启gtid,xtrabackup_binlog_info储存gtid的值

支持xtrabackup --export,这个选项生成5.6样式的元数据文件。可以通过alter table import tablespace导入

2.0.5 --defaults-extra-file 存备份用户的用户名和密码的配置文件

2.0.3 支持--move-back

1.9.1 支持压缩备份,之前能能streaming备份之后通过外部工具压缩

支持streaming增量备份

LRU DUMP

1.6.4 innobackupex支持--rsync选项 在datadir目录进行两阶段rsync(首先没有写锁,之后有写锁,)减少写锁持有的时间

感兴趣的请看原文。。。