Percona Xtrabackup简明教程.docx
《Percona Xtrabackup简明教程.docx》由会员分享,可在线阅读,更多相关《Percona Xtrabackup简明教程.docx(45页珍藏版)》请在第一文库网上搜索。
1、Percona Xtrabackup简明教程Percona XtraBackup是一款开放源代码且免费的MySQL热备份软件,是目前最流行的MySQL备份软件之一,可以非阻塞地对InnoDB和XtraDB数据库进行备份。使用 Percona XtraBackup,可以: 快速可靠地完成备份。 在备份期间不间断地处理事务。 节省磁盘空间和网络带宽。 自动备份验证。 更快地恢复,以保障业务有更长的在线时间。Percona XtraBackup支持所有版本的Percona Server MySQL和MariaDB分支的MySQL热备份,可以进行流备份、压缩备份、增量备份,对InnoDB、XtraDB
2、和HailDB存储引擎支持完全非阻塞的备份。此外,还可以简单地备份MylSAM、Merge和Archive存储引擎(会锁定表)。注意:本章内容根据XtraBackup 2.4.4版本撰写,在该版本中innobackupex命令为xtrabackup的软链接,本质上它们是同一个二进制程序。原理1.完全备份与恢复原理(1)完全备份流程如图49.1所示为完全备份流程(根据执行完全备份时的日志输出信息整理)。XtraBackup备份示意图如图49-2所示(该图来自互联网)。复制InnoDB引蒙表的innobcickupex 全备流程.ibdataR undo logs等文件图49-11.粮总命令行敷的
3、定的IP地址、m号密码,使用PCdDBI逐接到MySQl中,并执行两次版本检专2、馔取正文件,找到相应的数播和日志文件位5、执行FLUSH NO.WRITE.TO.BINLOG TABLES. RUSH TABLES WITH READ IOCK请句6.复H非InnoDB用掌,的.MYD. .MYk .frm、.opt. Esc等文件构nnoOB引掌表的.frm. opt. rrtsc等文件7.收取二进制日志文件位Ji (或GTID位置)并JSUxtrQbodup-bintoQjnfo文件中8.执行FLUSH N。WRITE 10 BINLOG ENGME LOGSigt)9.停止日志复制线程
4、(复Mfadolog的线程)10.执行UNLOCK TABIES语句1k务份收尾工作:生跳f. xtrQbockupJnfo等文件,收尾工作完成之后退出Innobockupex名份进程3、start xtrobockup.log:创Jtxtrabockup_logfite文件.HKlmysqlinstance方式,以读写模式打开并添取red。log.衿查当IRcheckpcint点,从当前checkpolZ点位开始复制redo log.同时持续扫$edoloo有新产鼓的伯do looBt掘就复制到xlgbouhipjogflte文件中Delayed update(2)完全备份流程解析 inno
5、backupex在开始备份时,连接用于在备份过程中执行如加锁、首先使用指定的账号和密码连接MySQL,该数据库解锁,刷新redo日志等与数据库进行交互操作。 读取defaults-file选项指定的配置文件,解析innodb_data_home_dir和innodbog_group_home_dir等系统参数,找到数据表空间和redo日志文祥的位置。初建xtrabackupogfile文件,模拟MySQL实例方式,以读写模式打开并读取redo日志,检查当前检查点,从当前检查点位置开始复制redo日志,同时持续扫描redo日志,有新产生的redo日志数据就复制到xtrabackupogfi 1
6、e文件中(在整个备份过程中一直在复制redo日志,通过查看备份目录下的xtrabackupogfile文件,可以看到这个文件在不断增长)。 另外一个线程调用xtrabackup命令开始复制数据文件(包括共享表空间文件和独立表空间文件,相当于获得了redo日志、undo日志和数据文件,只是没有内存中的脏页数据,不过没有关系,直接用redo日志来恢复就可以了)。 全局执行FLUSH TABLES WITH READ LOCK语句(下文中提到的FTWRL为该语句的简写)加一个S锁,此时数据库处于不可写状态(执行FLUSH TABLES WITH READLOCK语句的目的是为了防止读取数据时发生DD
7、L操作,并且获取binlog文件位置)。redo日志暂时也会卡在这里。 开始复制表结构文件,即.MYD和.MYI文件(由于前面步骤会锁定表,所以如果数据库中有很大的MylSAM表就要注意了,会一直锁定到MylSAM的.MYD、.MYI、.frm文件复制完成且获取了binlog文件位置之后才解锁。如果没有MylSAM表,那么在复制完表空间文件之后的操作是非常快的,可能不到1分钟就完成了复制表.frm文件,获取到binlog文件位置。 先执行FLUSH NO_WRITE_TO_BINLOG ENGINE LOGS语句将InnoDB层的redo 日志持久化到磁盘后进行复前(因为xtrabackup并
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Percona Xtrabackup简明教程 Xtrabackup 简明 教程