Percona Xtrabackup是一款针对MySQL数据库的开源、免费的热备工具,支持增量备份,压缩备份和流备份等,功能十分强大。旧版本的Xtrabackup包含两个主要的工具,xtrabackup和innobackupex。两者的区别是:xtrabackup只能备份innodb和xtradb两种引擎的表。innobackupex是一个封装了xtrabackup的Perl脚本,支持同时备份innodb和MyISAM。但是,新版本的Xtrabackup就只包含了xtrabackup,innobackupex只是xtrabackup的一个软连接。(官网也补充了:Warning:The innobackupex program is deprecated。Please switch to xtrabackup。)简单提一下,目前Xtrabackup2.4 支持MySQL 5.6和5.7。Xtrabackup 8.0 不支持MySQL 8.0之前的版本,并且Xtrabackup 8.0.X 也不支持MySQL 8.0.20及以上的版本。在8.0.20上使用xtrabackup备份会报错:Unknown redo log format。。导致备份终止。InnoDB: Redo log records for modifications to undo tablespaces increased in size in MySQL 8.0 due to a change in undo tablespace ID values, which required additional bytes. The change in redo log record size caused a performance regression in workloads with heavy write I/O. To address this issue, the redo log format was modified to reduce redo log record size for modifications to undo tablespaces. (Bug #29536710)
🔗: https://www.cnblogs.com/linuxk/p/9372990.html
1.innodbbackupex启动后,先fork一个进程,用来启动xtrabackup,然后等待xtrabackup备份ibd数据文件;2.xtrabackup在备份innodb数据时,有2个线程:redo的监测拷贝线程和ibd数据拷贝线程。xtrabackup进程开始执行后,先启动一个redo 监测和拷贝线程,先记录一个latest LSN号(log sequence number,也就是最新的checkpoint点),再启动ibd数据拷贝线程,开始拷贝ibd数据。在此阶段,innobackupex进程处于等待状态(等待文件被创建)。备份日志:

log copy 线程,每秒会去校验一次redo log,确认是否有新的记录被写入需要拷贝的。
官方解释:

如果备份的时候有大量的事务发生,日志复制线程可能无法跟上事务日志写入的速度,日志记录被覆盖,那么xtrabackup会报错,并退出。4.xtrabackup 拷贝完成ibd数据文件后,会通知innobackupex(通过创建文件的方式),同时xtrabackup进入等待状态(redo 拷贝线程依旧活跃中)5.innodbbackup收到xtrabackup通知后,执行flush no_write_to_binlog tables 和flush tables with read lock,取得一致性位点,然后开始备份非innodb文件,在拷贝非innodb文件的过程中,数据库处于全局只读状态。 
6.当innodbbackup拷贝完所有的非innodb文件后,会通知xtrabackup,通知完成后,进入等待状态。7.xtrabackup收到innodbbackupex备份完成的通知后。执行flush no_write_to_binlog binary logs,将binlog持久化,查询lsn,binlog pos等,拷贝binlog文件和binlog索引文件,并记录到xtrabackup_binlog_info文件中。接着执行flush no_write_binlog engine logs,将引擎层的重做日志持久化到磁盘。然后停止redo 拷贝线程。 
8.innodbbackupex收到redo备份完成后,开始进行解锁,unlock tables;9.最后innobackupex和xtrabackup进程各自释放资源,写备份原数据信息。整个Xtrabackup的流程就是这样的,至于基本用法和参数细节,需要的时候去官方查一查就可以啦。https://www.percona.com/doc/percona-xtrabackup/LATEST/index.html