MySQL XtraBackup---笔记

简介
• Percona XtraBackup 是 Percona 公司开发的用于 MySQL 数据库物理热备的开源免费工具,支持 MySQL、Percona Server 和 MariaDB。

• Xtrabackup 主要包含两个工具:xtrabackup用于热备 InnoDB、XtraDB 表数据,不能备份其他类型表和表结构;innobackupex是封装xtrabackup的 Perl 脚本,提供了备份 MyISAM 表的能力。


备份原理
• innobackupex启动后 fork 一个进程启动xtrabackup,xtrabackup先启动 redo 拷贝线程从最新 checkpoint 点开始顺序拷贝redo.log,再启动 ibd 数据拷贝线程拷贝 ibd 数据。

• xtrabackup拷贝完 ibd 数据文件后通知innobackupex,innobackupex执行FLUSH TABLES WITH READ LOCK取得一致性位点,然后备份非 InnoDB 文件。

• 拷贝完非 InnoDB 文件后,innobackupex通知xtrabackup,xtrabackup停止 redo 拷贝线程,innobackupex执行解锁操作,最后各自释放资源,写备份元数据信息。


常用选项

• --host:指定主机。
• --user:指定用户名。
• --password:指定密码。
• --port:指定端口。
• --databases:指定数据库。
• --incremental:创建增量备份。
• --incremental-basedir:指定包含完全备份的目录。
• --incremental-dir:指定包含增量备份的目录。
• --apply-log:对备份进行预处理操作,使数据文件处于一致性状态。
• --redo - only:不回滚未提交事务。
• --copy - back:恢复备份目录。


优点

  • 备份速度快,物理备份可靠。
  • 备份过程不打断正在执行的事务,无需锁表(对 InnoDB 而言,MyISAM 备份需加表锁)。
  • 可基于压缩等功能节约磁盘空间和流量。
  • 自动备份校验。
  • 还原速度快。
  • 可在不增加服务器负载的情况下备份数据。

与其他备份工具对比


相关推荐
于樱花森上飞舞11 分钟前
【Redis】哨兵详解
java·开发语言·数据库·redis
徐子童36 分钟前
介绍MVCC机制
java·mysql·面试题·秋招·并发·mvcc
thefool11226644 分钟前
库和表基本操作、表的增删改查
mysql
李白客1 小时前
向量数据库怎么选:RAG 项目最该比较的 8 个维度(深度拆解)
数据库·aigc
AAA代码批发商1 小时前
Days 47 IMX6ULL 裸机开发:按键轮询实验 + 外部中断原理剖析(上)
笔记·学习·imx6ull·裸机开发·#arm中断
sunoo-2291 小时前
【ARM嵌入式学习笔记Day6】一文打通i.MX6ULL时钟体系:PLL/PFD/预分频+滞回比较器全解析
arm开发·笔记·vscode·单片机·imx6ull·汇编语言
cspttty1 小时前
需求预测校招入门:SQL、Excel、统计模型和业务指标怎么学
大数据·数据库
2501_933670791 小时前
面向物流数据分析校招:SQL、Excel、BI、WMS/TMS该怎么准备
数据库
Code_流苏1 小时前
AI 知识库和数据库有什么区别?从“查订单”到“问规则”讲清楚
数据库·ai·agent·知识库
YangYang9YangYan1 小时前
财务 BP 校招面试案例整理|业务场景题 + 数据案例,2027 届求职
大数据·数据库