Xtrabackup备份与恢复 Xtrabackup是一个用于MySQL数据库物理热备的备份工具,由Percona公司开发,支持MySQL、Percona server和MariaDB,开源免费。其主要特点是能够对数据库进行增量备份,支持InnoDB和XtraDB两种数据引擎的表,但不能备份MyISAM数据表。 Xtrabackup的优点包括: * 快速备份速度 * 物理备份可靠 * 不会打断正在执行的事务 * 能够基于压缩等功能节约磁盘空间和流量 * 自动备份校验 * 还原速度快 * 可以流传将备份传输到另外一台机器上 * 在不增加服务器负载的情况备份数据 Xtrabackup的备份流程可以分为以下几步: 1. innobackupex启动后,会fork一个进程,用于启动xtrabackup,然后等待xtrabackup备份ibd数据文件。 2. xtrabackup在备份innoDB数据时,有两个线程:redo拷贝线程和ibd数据拷贝线程。 3. xtrabackup进程开始执行后,会启动一个redo拷贝的线程,用于从最新的checkpoint点开始顺序拷贝redo.log。 4. xtrabackup拷贝完成ibd数据文件后,会通知innobackupex,然后xtrabackup进入等待状态。 5. innobackupex收到xtrabackup通知后,执行FLUSH TABLES WITH READ LOCK,取得一致性位点,然后开始备份非InnoDB文件。 6. 当innobackup拷贝完所有的非InnoDB文件后,会通知xtrabackup,通知完成后,进入等待状态。 7. xtrabackup收到innobackupex备份完成的通知后,会停止redo拷贝线程,然后通知innobackupex,redo.log文件拷贝完成。 8. innobackupex收到redo.log备份完成后,就进行解锁操作,执行UNLOCK TABLES。 9. 最后innbackupex和xtrabackup进程各自释放资源,写备份元数据信息等,innobackupex等xtrabackup子进程结束后退出。 Xtrabackup的安装可以选择rpm包方式,也可以下载源码包编译安装。使用innobackupex备份时,它会调用xtrabackup备份所有的InnoDB表,复制所有关于表结构定义的相关文件(.frm)、以及MyISAM、MERGE、CSV和ARCHIVE表的相关文件,同时还会备份触发器和数据库配置信息相关的文件,这些文件会被保存到一个以时间命名的目录当中。在备份的同时,innobackupex还会在备份目录中创建如下文件: * xtrabackup_checkpoints:备份的检查点文件 * xtrabackup_log:备份的日志文件 * xtrabackup_slave_info:备份的slave信息文件 Xtrabackup是一个功能强大且灵活的备份工具,能够满足各种数据库备份需求,提高数据库的可靠性和安全性。
剩余9页未读,继续阅读
- 粉丝: 0
- 资源: 73
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Prophet时间序列预测入门.ipynb
- 一款由Java写的射击游戏.zip算法资源
- 一些java的小游戏项目,贪吃蛇啥的.zip用户手册
- 在线实时的斗兽棋游戏,时间赶,粗暴的使用jQuery + websoket 实现实时H5对战游戏 + java.zip课程设计
- HTML5酒店网站模板.zip
- 基于SpringBoot开发的支付系统(包括支付宝支付,微信支付,订单系统).zip
- C基于Qt的学生成绩管理系统.zip毕业设计
- 基于深度卷积神经网络(CNN)模型的图像着色研究与应用系统实现
- Java Web实验报告五:基于JSP的留言本
- Java Web实验报告四:基于AJAX的级联下拉菜单