西昌手機(jī)網(wǎng)站疫情最新動(dòng)態(tài)
文章目錄
- 前言
- 1. Xtrabackup 介紹
- 1.1 物理備份與邏輯備份區(qū)別
- 1.2 Xtrabackup 系列版本
- 2. Xtrabackup 部署
- 2.1 下載安裝包
- 2.2 二進(jìn)制部署
- 2.3 程序文件介紹
- 2.4 備份需要的權(quán)限
- 3. Xtrabackup 使用場(chǎng)景
- 3.1 本地全量備份
- 3.2 本地壓縮備份
- 3.3 全量流式備份
- 3.3.1 備份到遠(yuǎn)程主機(jī)
- 3.3.2 gzip 本地壓縮備份
- 3.3.2 gzip 遠(yuǎn)程壓縮備份
- 3.3.2 遠(yuǎn)程備份限速
- 3.4 全量備份恢復(fù)數(shù)據(jù)
- 3.5 增量備份與恢復(fù)
- 3.5.1 增量備份
- 3.5.2 增量備份恢復(fù)
前言
數(shù)據(jù)庫(kù)備份恢復(fù)是 DBA 的 “保命” 技能,生產(chǎn)業(yè)務(wù)不僅要保證有合適的備份策略,也要定期驗(yàn)證備份的有效性和恢復(fù)演練流程,因?yàn)閿?shù)據(jù)恢復(fù)和驗(yàn)證可能會(huì)涉及多方合作,演練可以讓災(zāi)難真正發(fā)生時(shí),多方配合有條不紊的將數(shù)據(jù)恢復(fù),從而盡可能的減少 RTO 讓業(yè)務(wù)快速恢復(fù)。
Xtrabackup 是 MySQL 社區(qū)唯一一款開(kāi)源物理熱備工具,本篇文章將詳細(xì)介紹 DBA 如何使用它,以及備份恢復(fù)的詳細(xì)步驟。
官方文檔地址:https://www.percona.com/software/documentation
1. Xtrabackup 介紹
1.1 物理備份與邏輯備份區(qū)別
1.2 Xtrabackup 系列版本
目前 Xtrabackup 活躍的大版本有三個(gè):
- Xtrabackup 2.4 適用于 MySQL 5.6 和 MySQL 5.7。
- Xtrabackup 8.0 適用于 MySQL 8.0。
- Xtrabackup 8.1 適用于 MySQL 8.1。
注意,三個(gè)版本不能混用,因?yàn)?MySQL 8.0 版本 redo log 和數(shù)據(jù)字典格式都發(fā)生了變化,可能會(huì)出現(xiàn)不兼容的情況。
2. Xtrabackup 部署
2.1 下載安裝包
從下方鏈接中,可以獲得 Percona 所有產(chǎn)品的安裝包:
https://www.percona.com/downloads
這里可以選擇 Xtrabackup 對(duì)應(yīng)的系列版本。版本號(hào)規(guī)則,例如 Percona XtraBackup 8.0.30-23 的版本號(hào)定義了以下信息:
- 基礎(chǔ)版本 - 最左邊的數(shù)字表示用作基礎(chǔ)的 MySQL 8.0 版本。
- 次要版本 - 表示軟件版本的內(nèi)部編號(hào)。
8.0.30 | -23 |
---|---|
Base version | Minor build version |
需要注意的是 Percona XtraBackup 編號(hào)在 8.0.14 版本之后發(fā)生了變化,以使 Percona XtraBackup 版本與 MySQL 保持一致。
所以在備份前,請(qǐng)確保 Percona XtraBackup 的版本等于或高于正在備份的數(shù)據(jù)庫(kù)版本。
推薦閱讀:Aligning Percona XtraBackup Versions with Percona Server for MySQL
2.2 二進(jìn)制部署
下載二進(jìn)制的 Xtrabackup 壓縮包,開(kāi)箱即用:
# 解壓縮
tar -zxvf percona-xtrabackup-8.0.34-29-Linux-x86_64.glibc2.17.tar.gz
# 移動(dòng)目錄
mv percona-xtrabackup-8.0.34-29-Linux-x86_64.glibc2.17 /usr/local/xtrabackup-8.0.34
# 配置軟鏈接
ln -sf /usr/local/xtrabackup-8.0.34/bin/* /usr/bin/
完成以上三步,輸入 xtrabackup --version
就可以看到版本信息。
xtrabackup version 8.0.34-29 based on MySQL server 8.0.34 Linux (x86_64) (revision id: 5ba706ee)
2.3 程序文件介紹
接下來(lái)看看 bin 目錄下,各文件的具體作用:
- xbcloud:與流式備份相結(jié)合,可將備份存儲(chǔ)到 OSS 對(duì)象存儲(chǔ)上。
- xbcloud_osenv:對(duì) xbcloud 的二次封裝,
- xbcrypt:用來(lái)加密解密。
- xbstream:用來(lái)解壓流式備份集。
- xtrabackup:備份的主程序,備份和恢復(fù)的工具。
在 xtrabackup 2.4 版本中,還有 innobackupex 文件,不過(guò)它只是 xtrabackup 的一個(gè)軟鏈。
在 xtrabackup 2.3 版本之前,xtrabackup 只支持 innodb 表的備份,MyISAM 等非事務(wù)引擎的表的備份是通過(guò) innobackupex 來(lái)實(shí)現(xiàn)的。它是使用 Perl 腳本編寫(xiě)的,而 xtrabackup 是使用 C++ 程序編譯的二進(jìn)制文件。
xtrabackup 來(lái)備份事務(wù)引擎的表,innobackupex 備份非事務(wù)引擎的表,兩個(gè)程序協(xié)作完成最終的備份一致性。但既然是兩個(gè)不同的工具協(xié)同處理一個(gè)任務(wù),就必然涉及到兩個(gè)工具之間,信息的交互。當(dāng)時(shí)信息交互的方案,是通過(guò)創(chuàng)建和刪除臨時(shí)文件彼此交互。但這種方式存在風(fēng)險(xiǎn),例如在備份過(guò)程中,臨時(shí)文件被誤刪等。
于是從 xtrabackup 2.3 開(kāi)始,Percona 用 C 語(yǔ)言重寫(xiě)了 innobackupex,并將其作為 xtrabackup 的一個(gè)軟鏈。它依然支持之前的語(yǔ)法,但不會(huì)增加新特性,所有的新特性只會(huì)集成在 xtrabackup 中。
xtrabackup 8.0 中,innobackupex 被移除了,所以建議從 xtrabackup 2.3 開(kāi)始,只使用 xtrabackup 二進(jìn)制程序進(jìn)行備份恢復(fù)操作。
本篇文章的所有演示也只會(huì)使用 xtrabackup。
2.4 備份需要的權(quán)限
Xtrabackup 備份工具,備份時(shí)用戶(hù)需要有以下權(quán)限。
- Reload:用于執(zhí)行 FLUSH TABLES WITH REDO LOCK 和 FLUSH NO_WRITE_TO_BINLOG TABLES 是必需權(quán)限。
- Replication client:用于執(zhí)行 SHOW MASTER STATUS 和 SHOW SLAVE STATUS 查看位點(diǎn)信息,是必需權(quán)限。
- BACKUP_ADMIN:用于執(zhí)行 LOCK INSTANCE FOR BACKUP,是必需權(quán)限。
- Process:用于執(zhí)行 SHOW ENGINE INNODB STATUS 和 SHOW PROCESSLIST 是必需權(quán)限。
- SYSTEM_VARIABLES_ADMIN:用于在增量備份時(shí)執(zhí)行 SET GLOBAL mysqlbackup.backupid = xxx 操作,是非必需權(quán)限。
- SUPER:在指定 --kill-long-queries-timeout 需要?dú)⒌袈樵?xún),和從庫(kù)備份指定 --safe-slave-backup 需要重啟復(fù)制,需要用到該權(quán)限。
- SHOW VIEW:確認(rèn)是否有非 INNODB 引擎表。
- 如果使用 Page Tracking 進(jìn)行增量備份,還需要 mysql.component 表的查詢(xún)權(quán)限。
- 如果指定 --history 還需要 performance_schema.xtraback_history 的 SELECT、INSERT、CREATE、ALTER 權(quán)限。
以下是 MySQL 8.0 以上版本的完整授權(quán)示例:
CREATE USER 'bkpuser'@'localhost' IDENTIFIED BY 's3cr%T';
GRANT BACKUP_ADMIN, PROCESS, RELOAD, LOCK TABLES, REPLICATION CLIENT ON *.* TO 'bkpuser'@'localhost';
GRANT SELECT ON performance_schema.log_status TO 'bkpuser'@'localhost';
GRANT SELECT ON performance_schema.keyring_component_status TO bkpuser@'localhost';
GRANT SELECT ON performance_schema.replication_group_members TO bkpuser@'localhost';
以下是 MySQL 5.7 版本的完整授權(quán)示例:
CREATE USER 'bkpuser'@'localhost' IDENTIFIED BY 's3cret';
GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO 'bkpuser'@'localhost';
參考:Connection and Privileges Needed
3. Xtrabackup 使用場(chǎng)景
Xtrabackup 備份恢復(fù)有三個(gè)階段,第一階段是備份階段,將物理文件拷貝到備份目錄。第二階段是 Prepare 階段,應(yīng)用 redo log 將數(shù)據(jù)文件恢復(fù)到備份結(jié)束時(shí)的一致性狀態(tài)。第三階段是恢復(fù)階段,就是將備份文件拷貝到 MySQL 數(shù)據(jù)目錄下面,除了使用 Xtrabackup 命令拷貝,我們也可以手動(dòng)拷貝。
3.1 本地全量備份
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 -p'YouPassword' --parallel=5 --target-dir=/data/backup/bakup_`date +"%F_%H_%M_%S"` 2>/tmp/xtrabackup.log
關(guān)鍵參數(shù)介紹:
- –backup:發(fā)起全量備份。
- -u, -H, -P, -p:連接 mysql 實(shí)例,用戶(hù)名、主機(jī) IP、端口、密碼。
- –slave-info:記錄 slave 復(fù)制位點(diǎn)信息,一般備份從庫(kù)需要指定該參數(shù)。
- –target-dir:備份文件的存放路徑。
- –parallel:并發(fā)拷貝的線(xiàn)程數(shù)。
- 2>/tmp/xtrabackup.log:將備份過(guò)程中的日志重定向到 /tmp/xtrabackup.log 文件中。
Tips:Xtrabackup 備份成功后,日志最后一行會(huì)輸出 completed OK!
備份出來(lái)的文件中,除了數(shù)據(jù)文件,還有以下額外的文件:
- backup-my.cnf:該文件不是 MySQL 參數(shù)文件的備份,只是記錄了一些 Innodb 引擎的參數(shù),會(huì)在 Prepare 階段用到。
- xtrabackup_logfile:該文件用來(lái)保存拷貝的 redo log。
- xtrabackup_binlog_info:binlog 位點(diǎn)信息和 GTID 信息。使用該備份恢復(fù)后,需要從該 binlog 位點(diǎn)進(jìn)行增量恢復(fù)。
- xtrabackup_slave_info:如果是對(duì)從庫(kù)進(jìn)行備份,指定
--slave-info
該文件會(huì)記錄主節(jié)點(diǎn)的位點(diǎn)信息,取自 SHOW SLAVE STATUS 中的 Relay_Master_Log_File 和 Exec_Master_Log_Pos。如果是給主庫(kù)備份,該文件為空。 - xtrabackup_checkpoints:該文件記錄了備份類(lèi)型和 LSN 信息。
- xtrabackup_info:該文件中,記錄備份的詳細(xì)信息。
- xtrabackup_tablespaces:記錄備份集中表空間的信息。
3.2 本地壓縮備份
壓縮備份通過(guò) --compress 指定壓縮算法,具體命令如下:
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 -p'YouPassword' --compress --parallel=5 --target-dir=/data/backup/bakup_`date +"%F_%H_%M_%S"`
Xtrabackup 8.0 支持兩種壓縮算法 zstd(默認(rèn)) 和 lz4 算法,Xtrabackup 5.7 僅支持 quicklz 算法。
其中 zstd 在解壓縮時(shí)依賴(lài) zstd 需要安裝才能進(jìn)行解壓。quicklz 算法依賴(lài) qpress 也需要安裝后才能進(jìn)行解壓。
在 Prepare 階段之前,必須要先進(jìn)行解壓,命令如下:
xtrabackup --decompress --parallel=5 --target-dir=/data/backup/bakup_2023-11-13_14_44_55/
在解壓過(guò)程中,需要注意:
-
解壓過(guò)程中,同樣可以指定
--parallel
參數(shù),進(jìn)行并行解壓。 -
解壓后,默認(rèn)不會(huì)刪除壓縮文件。如果需要?jiǎng)h除,可以指定
--remove-original
參數(shù)。 -
即便壓縮文件沒(méi)有被刪除,當(dāng)使用
--copy-back
將備份拷貝到數(shù)據(jù)目錄時(shí),默認(rèn)也不會(huì)拷貝這些壓縮文件。
使用 compress 壓縮只支持幾種限定的算法,如果想要使用其他算法,就需要結(jié)合流式備份。
3.3 全量流式備份
流式備份指將備份數(shù)據(jù)通過(guò)流的方式輸出到 STDOUT,而不是備份文件中。結(jié)合管道,可將多個(gè)功能組合在一起,如壓縮、加密、流控等。
在 xtrabackup 2.4 版中支持 tar 和 xbstream 流格式,但 tar 格式不支持并行備份。
在 xtrabackup 8.0 中,僅支持 xbstream 流格式,不再支持 tar 格式。
3.3.1 備份到遠(yuǎn)程主機(jī)
使用下方命令通過(guò)管道組合,實(shí)現(xiàn)本地不落盤(pán),將備份保存到遠(yuǎn)程主機(jī)。
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 -p'YouPassword' \--stream=xbstream --target-dir=/data/backup/bakup_`date +"%F_%H_%M_%S"` 2>/data/backup/xtrabackup.log \| ssh root@172.16.104.7 "cat - > /data/backup/backup.xbstream"
遠(yuǎn)程恢復(fù)的時(shí)候,需要先使用 xbstream 命令進(jìn)行解壓:
xbstream -x --parallel=10 -C /data/backup/20231113 < ./backup.xbstream
xbstream 中的 -x 表示解壓,–parallel 表示并行度,-C 指定解壓的目錄,最后一級(jí)目錄必須存在。
3.3.2 gzip 本地壓縮備份
使用流式備份,配合管道使用 gzip 命令對(duì)備份在本地進(jìn)行壓縮。
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 -p'YouPassword' \--stream=xbstream --target-dir=/data/backup/bakup_`date +"%F_%H_%M_%S"` \| gzip - > /data/backup/backup1.gz
恢復(fù)時(shí)需要先使用 gunzip 解壓,再使用 xbstream 解壓,才能進(jìn)行 Prepare 階段。
# gzip 解壓
gunzip backup1.gz# xbstream 解壓
xbstream -x --parallel=10 -C /data/backup/backup_full < ./backup1
3.3.2 gzip 遠(yuǎn)程壓縮備份
使用流式備份,配合管道將備份 ssh 到遠(yuǎn)程進(jìn)行壓縮。
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 -p'YouPassword' \--stream=xbstream --target-dir=/data/backup/bakup_`date +"%F_%H_%M_%S"` \| ssh root@172.16.104.7 "gzip - > /data/backup/backup1.gz"
Tips:恢復(fù)解壓時(shí)的步驟與 3.3.2 相同。
3.3.2 遠(yuǎn)程備份限速
直接備份到遠(yuǎn)程服務(wù)器,如果擔(dān)心備份會(huì)占用較大的網(wǎng)絡(luò)帶寬,可以使用 pv 命令限速。
下面是 pv 工具的安裝方法:
wget https://www.ivarch.com/programs/sources/pv-1.8.0.tar.gz
tar xzf pv-1.8.0.tar.gz
cd pv-1.8.0
sh ./configure
make
sudo make install
下方命令表示限速 10MB 將備份發(fā)送到遠(yuǎn)程服務(wù)器壓縮保存。
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 -p'YouPassowrd' \--stream=xbstream --target-dir=/data/backup/bakup_`date +"%F_%H_%M_%S"` \
| pv -q -L10m | ssh root@172.16.104.7 "cat - > /data/backup/backup.xbstream"
pv 命令中,-q 是指 quiet 不輸出進(jìn)度信息,-L 是指?jìng)鬏斔俾?10m 指 10MB。
Tips:恢復(fù)解壓時(shí)的步驟與 3.3.1 相同。
3.4 全量備份恢復(fù)數(shù)據(jù)
前面 3 個(gè)小節(jié),介紹的都是全量備份階段,本小節(jié)將介紹如何恢復(fù)全量備份。
首先要進(jìn)行 Prepare 階段,在該階段 Xtrabackup 會(huì)啟動(dòng)一個(gè)嵌入的 InnoDB 實(shí)例來(lái)進(jìn)行 Crash Recovery。該實(shí)例的緩沖池的大小由 --use-memory
參數(shù)指定,默認(rèn)為 100MB。如果有充足的內(nèi)存,通過(guò)設(shè)置較大的 memory 可以減少 Prepare 階段花費(fèi)的時(shí)間。
# 進(jìn)入到備份目錄執(zhí)行該命令
xtrabackup --prepare --use-memory=2G --target-dir=./
Prepare 階段執(zhí)行完成后,備份目錄下才會(huì)生成 redo log 文件,可據(jù)此判斷備份文件是否執(zhí)行過(guò) Prepare 階段。
Prepare 階段完成后,下面進(jìn)入恢復(fù)階段,可以手動(dòng)拷貝文件到數(shù)據(jù)目錄,也可以使用 xtrabackup 工具進(jìn)行拷貝。
# 進(jìn)入到備份目錄執(zhí)行該命令
xtrabackup --defaults-file=/etc/my.cnf --copy-back --parallel=10 --target-dir=./
命令中 --copy-back
表示將備份數(shù)據(jù)文件拷貝到 MySQL 數(shù)據(jù)目錄下。如果在存儲(chǔ)空間不足的情況下,可以使用 --move-back
表示移動(dòng)備份文件。
另外,恢復(fù)實(shí)例的數(shù)據(jù)目錄必須為空,所以在恢復(fù)前,我們需要清空 MySQL 數(shù)據(jù)目錄,或者將其 mv 備份后,重新創(chuàng)建同名目錄。數(shù)據(jù)文件拷貝到目標(biāo)目錄后,需要修改文件屬組。
chown -R mysql:mysql /data/mysql_80/
至此,備份就恢復(fù)完成了,直接啟動(dòng) MySQL 即可。
mysqld_safe --defaults-file=/etc/my.cnf &
3.5 增量備份與恢復(fù)
xtrabackup 支持增量備份。在做增量備份之前,需要先做一個(gè)全量備份。xtrabackup 會(huì)基于 innodb page 的 lsn 號(hào)來(lái)判斷是否需要備份一個(gè) page。如果 page lsn 大于上次備份的 lsn 號(hào),就需要備份該 page。
3.5.1 增量備份
先進(jìn)行一次全量備份。
# 先創(chuàng)建全量備份的目錄
mkdir /data/backup/full
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 \-p'YouPassword' --stream=xbstream --target-dir /data/backup/full \--extra-lsndir=/data/backup/full \2>/data/backup/full/backup_full.log | gzip - > /data/backup/full/backup_full.gz
備份命令加上 了–extra-lsndir 選項(xiàng),將 xtrabackup_checkpoints 單獨(dú)輸出到文件。增量備份時(shí)需要根據(jù) xtrabackup_checkpoints中的 lsn。以下是相關(guān)文件。
# ls -l /data/backup/full
-rw-r--r-- 1 root root 3014835 6月 25 16:35 backup_full.gz
-rw-r--r-- 1 root root 40313 6月 25 16:35 backup_full.log
-rw-r--r-- 1 root root 134 6月 25 16:35 xtrabackup_checkpoints
-rw-r--r-- 1 root root 673 6月 25 16:35 xtrabackup_info
現(xiàn)在,發(fā)起增量備份。
# 先創(chuàng)建增量備份的目錄
mkdir /data/backup/inc1
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 \-p'YouPassword' --stream=xbstream --target-dir /data/backup/inc1 \--extra-lsndir=/data/backup/inc1 \--incremental-basedir=/data/backup/full \2>/data/backup/inc1/backup_inc1.log | gzip - > /data/backup/inc1/backup_inc1.gz
–incremental-basedir:全量備份或上一次增量備份 xtrabackup_checkpoints 文件所在目錄。
增量備份也可以在上一次增量備份的基礎(chǔ)上進(jìn)行:
# 先創(chuàng)建增量備份的目錄
mkdir /data/backup/inc2
xtrabackup --backup --slave-info -u root -H 127.0.0.1 -P3306 \-p'YouPassword' --stream=xbstream --target-dir /data/backup/inc2 \--extra-lsndir=/data/backup/inc2 \--incremental-basedir=/data/backup/inc1 \2>/data/backup/inc2/backup_inc2.log | gzip - > /data/backup/inc2/backup_inc2.gz
3.5.2 增量備份恢復(fù)
恢復(fù)增量備份時(shí),需要先對(duì)基礎(chǔ)全量備份進(jìn)行恢復(fù),然后再依次按增量備份的時(shí)間進(jìn)行恢復(fù)。
這個(gè)例子中,相關(guān)備份文件的目錄結(jié)構(gòu)如下:
/data/backup
├── full
│ ├── backup_full
│ ├── backup_full.log
│ ├── xtrabackup_checkpoints
│ └── xtrabackup_info
├── inc1
│ ├── backup_inc1.gz
│ ├── backup_inc1.log
│ ├── xtrabackup_checkpoints
│ └── xtrabackup_info
├── inc2
│ ├── backup_inc2.gz
│ ├── backup_inc2.log
│ ├── xtrabackup_checkpoints
│ └── xtrabackup_info
首先,恢復(fù)全量備份。
cd /data/backup/fullgunzip backup_full.gz# 需要先刪除這兩個(gè)文件,否則 xbstream 提取文件時(shí)有沖突
rm xtrabackup_checkpoints xtrabackup_infoxbstream -x -v < backup_fullxtrabackup --prepare --apply-log-only --target-dir=. > prepare_full.log 2>&1
恢復(fù)全量備份時(shí),需要加上 apply-log-only 參數(shù)。如果不加上 apply-log-only 參數(shù),執(zhí)行 prepare 的最后階段,會(huì)回滾未提交的事務(wù),但是這些事務(wù)可能在下一次增量備份時(shí)已經(jīng)提交了。
查看日志,確認(rèn)這一步驟執(zhí)行成功(最后一行日志顯示“completed OK!”):
[Note] [MY-011825] [Xtrabackup] completed OK!
接下來(lái),恢復(fù)第一個(gè)增量備份。
cd /data/backup/inc1gunzip backup_inc1.gz# 需要先刪除這兩個(gè)文件,否則 xbstream 提取文件時(shí)有沖突
rm xtrabackup_checkpoints xtrabackup_info# 提取文件
xbstream -x -v < backup_inc1# 恢復(fù)增量備份時(shí),切換到全量備份的目錄執(zhí)行
cd /data/backup/full
xtrabackup --prepare --apply-log-only --incremental-dir=/data/backup/inc1 --target-dir=.
恢復(fù)增量備份時(shí),加上 apply-log-only 參數(shù),參數(shù) --incremental-dir 設(shè)置為增量備份文件所做目錄。日主輸出 completed OK! 表示任務(wù)運(yùn)行成功。
接下來(lái),恢復(fù)第二個(gè)增量備份,也就是最后一個(gè)增量備份。
cd /data/backup/inc2gunzip backup_inc2.gz# 需要先刪除這兩個(gè)文件,否則xbstream提取文件時(shí)有沖突
rm xtrabackup_checkpoints xtrabackup_info# 提取文件
xbstream -x -v < backup_inc2# 恢復(fù)增量備份時(shí),切換到全量備份的目錄執(zhí)行
cd /data/backup/full
xtrabackup --prepare --incremental-dir=/data/backup/inc2 --target-dir=.
恢復(fù)最后一個(gè)增量備份時(shí),不需要再加上 --apply-log-only。這一步執(zhí)行完成后,xtrabackup_checkpoints文件內(nèi)容如下:
# cat xtrabackup_checkpoints
backup_type = full-prepared
from_lsn = 0
to_lsn = 42439917
last_lsn = 52717010
flushed_lsn = 52617342
redo_memory = 0
redo_frames = 0
backup_type 為 full-prepared,表示 Prepare 階段已經(jīng)完成。后面操作和恢復(fù)全量備份基本一樣。復(fù)制文件啟動(dòng)數(shù)據(jù)庫(kù)即可。
參考:YunChe MySQL運(yùn)維實(shí)戰(zhàn)之備份和恢復(fù)(8.4)xtrabackup恢復(fù)全量備份