文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

xtrabackup介绍及备份原理

2024-04-02 19:55

关注

1. Xtrabackup介绍

xtrabackup就percona公司基于innodb公司的ibbackup(收费)实现的一个开源软件,完全覆盖了ibbackup的功能,而且完全免费,可谓是业界良心。

xtrabackup包括两个工具:

xtrabackup 只能备份innodb和xtradb两种引擎的表,不能备份其它引擎的表。

innobackupex 它封装了xtrabackup的perl脚本,覆盖了xtrabackup的功能。它不但可以备份nnodb和xtradb两种引擎的表,还可以备份myisam引擎的表(在备份myisam表时需要加一个读锁)。

Xtrabackup 不但可以实现数据库的完全备份,还实现了数据库的增量备份。

2.  备份恢复流程

2.1   完全备份流程:

1)      innobackupex开启xtrabackup_log监控线程,实时监测redolog文件的变化,将新备份过程中新写入到事务日志中的日志拷贝至innobackup_log中;同时开启xtrabackup拷贝线程,开始拷贝innodb文件。

2)      开始拷贝innodb文件。

3)      复制innodb文件结束后,flush tables with read lock

4)      拷贝非innodb文件,.frm、.MYD MYI等类型的文件。

5)      记录当前binlog及position

6)      将表解锁unlock tables

7)      停止xtrabackup_log线程

2.2 全备恢复流程:

1)      对全备文件进行xtrabackup_log日志回放,并对提交的事务进行重做,同时rollback未提交的事务。

2)      将全备文件复制到mysql 下的data目录下。

2.3 增量备份流程:

增量备份是基于上次全备份,拷贝innodb页中有变更的页(LSN大于xtraback_checkpoints中的LSN号)。第一次增量备份是基于全备的,之后每一次备份都是基于上一次的增备,最终达到一致性的备份。增备与全备的过程类似,区别在于第2 步:

1)  innobackupex开启xtrabackup_log监控线程,实时监测redolog文件的变化,将新备份过程中新写入到事务日志中的日志拷贝至innobackup_log中;同时开启xtrabackup拷贝线程,开始拷贝innodb文件。

2)  开始拷贝自上次innodb备份后,变化的数据页,即当前LSN > xtrabackup_checkpoints中 的LSN。3)  复制innodb文件结束后,flush tables with read lock

4)  拷贝非innodb文件,.frm、.MYD MYI等类型的文件。

5)  记录当前binlog及position

6)  将表解锁unlock tables

7)  停止xtrabackup_log线程

 

2.4 增备恢复流程:

1)  恢复全备

2)  恢复增备,对未提交的事务进行rollback

3)  对全备与增备合并后的备份文件进行apply_log

4)  将备份文件拷贝到mysql 的data目录下。


3. 安装步骤

安装环境为centos6.5+mysql5.7

  1. shell>https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.1/binary/redhat/6/x86_64/percona-xtrabackup-24-2.4.1-1.el6.x86_64.rpm

  2. rpm –ivh percona-xtrabackup-24-2.4.1-1.el6.x86_64.rpm

安装时提示:

[root@mysql-master local]# rpm -ivhpercona-xtrabackup-24-2.4.1-1.el6.x86_64.rpm

warning:percona-xtrabackup-24-2.4.1-1.el6.x86_64.rpm: Header V4 DSA/SHA1 Signature,  key ID cd2efd2a: NOKEY

error: Failed dependencies:

libev.so.4()(64bit) is needed bypercona-xtrabackup-24-2.4.1-1.el6.x86_64

原因是需要先安装依赖包libev.so.4

shell> rpm -ivh libev-4.15-1.el6.rf.x86_64.rpm

3. 再次安装:rpm –ivh percona-xtrabackup-24-2.4.1-1.el6.x86_64.rpm 提示安装成功



innobackupex备份恢复的步骤:innobackupex应用案例


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯