【Xtrabackup】Xtrabackup備份基礎知識

恩強Boy發表於2021-01-08

一、  xtrabackup 備份工具介紹

1.  xtrabackup 備份介紹

Percona-xtrabackup Percona 公司開發的一個用於 MySQL 資料庫物理熱備的備份工具 它是開源免費的支援MySQL 資料庫熱備份的軟體, xtrabackup 只能備份 innoDB xtraDB 兩種資料引擎的表,而不能備份 MyISAM 資料表 MyISAM 基本也被淘汰了 ;它可以建立InnoDB 熱備份;為 mysql 做增量備份;在 mysql 伺服器之間做線上表遷移;使建立 replication 更加容易;備份 mysql 而不增加伺服器的負載。

2.  xtrabackup 版本相容性

Percona -x traBackup 8.0 Percona XtraBackup 新推出了一個針對 MySQL8.0 的版本,主要是 MySQL8.0 Redo 和 資料庫字典方面有了新的改進。 XtraBackup 2.4 繼續支援 MySQL 5.6 5.7

(1) xtrabackup 8.0 移除了innobackupex 命令;

(2) 由於新的MySQL 重做日誌和資料字典格式, 8.0 版本只支援 mysql8.0 percona8.0

(3) 早於mysql8.0 的版本需要使用 xtrabackup2.4 備份和恢復 .

3.  xtrabackup 備份優點

1)  備份速度快,物理備份

2)  備份過程中不影響資料庫使用,熱備份

3)  自動備份校驗

4)  還原速度快

5)  可以將備份傳輸到另一個機器上

6)  不增加伺服器負載

二、  xtrabackup 備份工具準備

1.  xtrabackup 下載

xtrabackup 8.0 版本

下載地址

xtrabackup 2.4 版本

示例為8.0 版本下載方式

這裡選擇 Xtrabackup 版本和作業系統版本

在選擇安裝包的時候,直接選擇 rpm 包就行

2.  xtrabackup 安裝

1)  在官網下載好的介質

percona-xtrabackup-24-2.4.21-1.el7.x86_64.rpm

2)  安裝該rpm 包,需要下載並安裝依賴包 libev

# rpm -ivh libev*.rpm

# yum -y install percona-xtrabackup-24-2.4.21-1.el7.x86_64.rpm

3)  安裝完成後,驗證一下

# rpm -qa|grep xtrabackup

percona-xtrabackup-24-2.4.21-1.el7.x86_64

4)  查詢一下該軟體包安裝了哪些軟體

# rpm -ql percona-xtrabackup-24-2.4.21-1.el7.x86_64

/usr/bin/innobackupex

/usr/bin/xbcloud

/usr/bin/xbcloud_osenv

/usr/bin/xbcrypt

/usr/bin/xbstream

/usr/bin/xtrabackup

/usr/lib64/xtrabackup/plugin/keyring_file.so

/usr/lib64/xtrabackup/plugin/keyring_vault.so

/usr/share/doc/percona-xtrabackup-24-2.4.21

/usr/share/doc/percona-xtrabackup-24-2.4.21/LICENSE

/usr/share/man/man1/innobackupex.1.gz

/usr/share/man/man1/xbcrypt.1.gz

/usr/share/man/man1/xbstream.1.gz

/usr/share/man/man1/xtrabackup.1.gz

3.  xtrabackup 常用工具說明

x trabackup 中主要包含兩個工具

xtrabackup :是用於熱備 innodb xtradb 表中資料的工具,不能備份其他型別的表,也不能備份資料表結構

innobackupex :是將 xtrabackup 進行封裝的 perl 指令碼,提供了備份 myisam 表的能力。

4.  innobackupex 常用引數解釋

引數

說明

-v,--version

輸出 xtrabackup 版本資訊

-?,--help

顯示幫助

--apply-log

透過應用相同目錄下的“ xtrabackup_logfile ”事務日誌檔案,在 BACKUP-DIR 目錄下準備一個備份,另外會建立一個新的事務日誌。 innoDB 檔案配置從 "backup-my.cnf" 中獲取   

--redo-only

該選項用於,準備一個全量備份、合併除最後一個增量以外的所有增量。該選項強迫 xtrabackup 跳過“ rollback , 只做“ redo , 如果後面的備份有增量改變,那麼必須使用該選項

--copy-back

將建立的備份中的所有檔案從備份目錄複製到它們的原始位置

--move-back

將備份的檔案移動從備份目錄移動到它們的原始位置,不保留備份檔案

--galera-info

這個選項會建立 xtrabackup_galera_info 檔案。該檔案包含備份時本機節點狀態。該選項應該在建立 Percona-XtraDB-Cluster 備份時使用。當使用備份鎖建立備份時,沒有任何效果。

--slave-info

當備份一個複製 slave 伺服器時,該選項特別有用。它會輸出 bin log 位置和 master 伺服器的名字。它還將此資訊作為 "CHANGE MASTER" 命令寫入 "xtrabackup_slave_info" 檔案。

--incremental

這個選項會建立增量備份,而不是完整備份。它被傳遞給 xtrabackup 子程式。如果指定了該選項,可以選擇“ --incremental-lsn ”或“ --incremental-basedir ”。如果兩個選項都沒有給出,預設的選項為“ --incremental-basedir

--no-lock

使用此選項禁用具有“ FLUSH TABLES WITH READ LOCK ”的表鎖

--safe-slave-backup

停止 slave 執行緒,等待啟動備份直到 "SHOW STATUS" 中的 Slave_open_temp_tables 為零。

--rsync

使用 rsync 程式最佳化本地檔案傳輸。當指定了這個選項時, innobackupex 使用 rsync 來複制所有非 innodb 檔案,而不是為每個檔案生成一個單獨的 cp ,這對於擁有大量資料庫或表的伺服器來說會快得多。這個選項不能和 --stream 一起使用

--force-non

-empty-directories

此選項,會將 --copy-back --move-back 傳輸檔案到非空目錄,注意現有的檔案不會被覆蓋

--no-timestamp

此選項阻止建立命令列上給定的 BACKUP-ROOT-DIR 的帶時間戳的子目錄。當指定了此選項時,備份將在 backup-root-dir 中執行。

--no-version-chec k

禁用版本檢查

--no-backup-locks

該選項控制使用應該使用備份鎖

--decompress

在先前使用 compress 選項進行的備份中,解壓所有副檔名為 .qp 的檔案

-u, --user=name

指定 MySQL 使用者名稱

-H, --host=name

指定主機名,使用 TCP/IP 協議

-P, --port=#

指定埠號

-p, --password=name

指定密碼

-S, --socket=name

當本地登入時,指定 socket

--history[=name]

該選項啟用 PERCONA_SCHEMA.xtrabackup_history 表的跟蹤備份歷史記錄

--databases=name

指定備份的資料庫名稱

--compress[=name]

該選項只是 xtrabackup 壓縮 InnoDB 資料檔案的備份副本。

--compress-threads

該選項指定用於並行壓縮的工作程式的數量

--compress-chunk-size

壓縮排程的工作 buffer 大小,預設是 64K

--export

它允許匯出單獨的表傳輸到另外的伺服器

--incremental-basedir

指定包含全備的目錄,作為增量備份的資料集的基礎

--incremental-dir

此選項指定將增量備份與完全備份結合以進行新的完全備份的目錄。

--incremental-lsn

該選項指定 LSN(Log Sequence number) 用於增量備份

--parallel=#

在備份階段,該選項指定 xtrabackup 子程式用於並行備份的執行緒數

--tables-file=name

該選項指定包含表單資料庫名稱列表的檔案

-t, --tmpdir=name

制定儲存臨時檔案的位置

--use-memory=#

該引數指定 xtrabackup 在準備備份時用於崩潰恢復的記憶體位元組數。,它僅與選項 --apple-log 一起使用

 

 

---- end ----


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31529886/viewspace-2748605/,如需轉載,請註明出處,否則將追究法律責任。

相關文章