博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
xtrabackup-增量备份
阅读量:7123 次
发布时间:2019-06-28

本文共 1482 字,大约阅读时间需要 4 分钟。

增量备份之所以能工作是因为每个innodb的page都包含日志序列号(LSN)。LSN是整个数据库的版本号。

增量备份会拷贝那些LSN比备份开始时新的页。有两种算法用来计算查找这些页:第一种,支持所有版本类型,从数据页中直接读取页的LSN号;第二种,只是支持percona server,可以跟踪所有改变的页,也改变跟踪信息会写入一个单独的、压缩的bitmap文件。xtrabackup使用这个文件去读取需要备份的页,从而降低了读请求。也可以使用--incremental-force-scan来强制读取所有的页,即使有bitmap文件存在。

增量备份并不需要将数据文件与之前的备份文件相比较。事实上,即使没有之前的备份,也可以使用--incremental-lsn直接进行增量备份。增量备份只是比较lsn。

备份的时候,xtrabackup会向--target_dir目录写入一个文件:xtrabackup_checkpoints。这个文件包含一行带有to_lsn的内容,即数据库备份后的lsn。

比如:

$ more xtrabackup_checkpoints backup_type = full-backupedfrom_lsn = 0to_lsn = 1626007last_lsn = 1626007compact = 0recover_binlog_info = 1

  

执行增量备份的过程:

1.创建全备$ xtrabackup --backup --target-dir=/data/backups/base2.执行增量备份$ xtrabackup --backup --target-dir=/data/backups/inc1 --incremental-basedir=/data/backups/base在/data/backups/inc1下包含delta文件3.再次增量备份$ xtrabackup --backup --target-dir=/data/backups/inc2 --incremental-basedir=/data/backups/inc1

 

如何对增量备份做prepare

对增量备份做prepare步骤,和全备不同。

对全被做prepare,为了确保数据一致性,要完成两种操作:事务前滚、事务回滚。
对增量备份做prepare,必须略过对未提交的事务的回滚,因为未提交的事务在备份的时候可能还在处理过程中,可能会在下一次增量备份时提交。所以需要使用xtrabackup --apply-log-only来阻止对事务回滚,否则增量备份是无效的。

 

假设有一个全备、两份增量备份:

/data/backups/base/data/backups/inc1/data/backups/inc2

  

要先对全备做prepare,再依次对增量备份做prepare:

$ xtrabackup --prepare --apply-log-only --target-dir=/data/backups/base$ xtrabackup --prepare --apply-log-only --target-dir=/data/backups/base --incremental-dir=/data/backups/inc1$ xtrabackup --prepare --target-dir=/data/backups/base --incremental-dir=/data/backups/inc2

  

转载地址:http://fwael.baihongyu.com/

你可能感兴趣的文章
postfix邮件服务
查看>>
4.使用NDOUtils将Nagios监控信息存入数据库
查看>>
Android 四大组件之Activity 基础总结(1)
查看>>
我没有抛弃SEO,没有离开度娘,只是选择相信马云
查看>>
我的友情链接
查看>>
关于短信协议
查看>>
我的友情链接
查看>>
eclipse 编码设置
查看>>
我的友情链接
查看>>
D3介绍
查看>>
xhtml 1.0和 html 4.01的区别、规范、选择
查看>>
解决 tomcat 启动服务器内存溢出
查看>>
浏览器环境
查看>>
一步一步学习RHEL7之环境搭建
查看>>
禁用http
查看>>
关于 Tomcat 的报错:ClientAbortException
查看>>
COOKIE和SESSION保持会话
查看>>
Microsoft Azure备份VMware虚拟机_2.配置Azure Backup Server
查看>>
我的友情链接
查看>>
用python实现选择截图区域
查看>>