Xtrabackup 安裝 參數詳解


安裝

Xtrabackup 介紹,本次來講解安裝和使用。

Xtrabackup的RPM包下載地址:

系統版本 官網剛下載地址 百度雲下載
CentOS 6 官網下載地址 百度雲盤鏈接 提取碼:rxv5
CentOS 7 官網下載地址 百度雲盤鏈接 提取碼:mq97

上述的地址,如果官網地址失效,可下載最新版,百度雲盤中的版本為博客發布的時間,百度雲盤中也是從官網下載的,如不放心,可自行在官網中下載;

安裝環境

系統版本 內核版本 IP地址
Centos 7.5 4.18.9-1.el7.elrepo.x86_64 172.31.239.233

安裝具體操作如下:

[root@node src]# wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.12/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.12-1.el7.x86_64.rpm
# 下載好以后,需要依賴,使用yum本地安裝,解決依賴關系;
[root@node src]# yum localinstall percona-xtrabackup-24-2.4.12-1.el7.x86_64.rpm
[root@node src]# xtrabackup -version
xtrabackup: recognized server arguments: --datadir=/var/lib/mysql
xtrabackup version 2.4.12 based on MySQL server 5.7.19 Linux (x86_64) (revision id: 170eb8c)
[root@node src]# which xtrabackup
/bin/xtrabackup

可以看到已經安裝完成;

常用參數詳解

Xtrabackupinnobackupex 工具的參數很多,這里介紹一些常用的和可能用到的一些參數,想要了解所有的參數詳解
請點擊: innobackupex 參數詳解xtrabackup 參數詳解

innobackupex 相關參數

--apply-log

通過應用同一目錄下的事務日志文件xtrabackup_logfile,在BACKUP-DIR目錄准備一個備份。頁建立一個新的事務日志文件。innoDB的配置是從innobackupex備份時建立的文件backup-my.cnf讀取。

--close-files

不保持文件被打開。默認備份時tablespace不關閉,但如果表空間很大並且不適合任何限制,有一個可選的方法是關閉不再訪問的文件。使用該選項會產生不一致的備份。

--compact

建立一個忽略耳機索引頁的簡潔備份。

--compress

建立一個innoDB數據文件的壓縮備份。它直接提交給xtrabackup的子進程

--compres-threads=#

並行壓縮的工作進場數量,它直接提交給xtrabackup的子進程

--compress-chunk-size=#

指定每個壓縮進程的內部工作緩沖區的尺寸,用字節來測量。它直接提交給xtrabackup的子進程

--copy-back

復制所有的備份到他們原來的位置

--databases=LIST

指定將要備份的數據庫列表。支持databasename.tablename格式,如果沒指定參數,則備份所有數據庫

--decompress

解壓所有以選項--compress備份的,結尾是.qp的文件。使用參數--parallel允許多個文件同時被解密和或解壓。
--decrypt=ENCRPYTION-ALGORITHM
解密用--encrpyt選項加密的以.xbcrypt結尾的文件。

--defaults-file=[my.cnf]

通過制定一個字符串來設置MySQL的默認選項

--defaults-extra-file=[my.cnf]

在從標准的默認文件中取值默認之前的額外文件。接收一個字符串作為選項

--defaults-group=GROUP-NAME

如果用了Mysqld_multi,可設置讀取配置文件的特定組

--encrypt=ENCRYPTION-ALGORITHM

該選項指引xtrabackup使用參數ENCRYPTION_ALGORITHM參數制定的算法,加密innoDB數據文件的備份,它直接指向子進程

--encrypt-key=ENCRYPTION_KEY

指示xtrabackup在備份時使用ENCRYPTION_KEY指定的key做--encrypt加密。它直接傳給子進程

--encrypt-key-file=ENCRYPTION_KEY_FILE

當用選項--encrpyt加密時使用存儲在ENCRYPTION_KEY_FILE里存儲的加密key

--encrypt-threads=#

指定並行加密的工作線程數。它直接傳給子進程

--encrypt-chunk-size=#

指定每個加密進程使用的內粗工作緩沖區的尺寸,以字節計算大小

--export

它用於導出單個表用於導入另一個server

--extra-lsndir=DIRECTORY

指定xtrabackup_checkpoints文件的保留目錄

--force-non-empty-directories

該參數使得選項--copy-back or --move-back選項傳輸文件到非空目錄。不存在的文件將被覆蓋。如果選項--copy-back or --move-back必須從備份目錄到一個已經存在的目標目錄,則將失敗

--galera-info

該選項在備份時建立包含本地節點狀態xtrabackup_galera_info文件。用於執行Percona-XtraDB-Cluster備份

--host=HOST

執行通過TCP/IP連接訪問數據庫的主機,它傳給mysql的子進程

--ibbackup=IBBACKUP-BINARY

接收字符串參數,它用來指定要使用的xtrabackup binary、

--include=REGEXP

指定一個正則表達式,用語匹配格式為databasename.tablename的表名稱,它傳遞給--tables選項

--incremental

建立一個增量備份,傳遞給xtrabackup的子進程。該參數可以和參數--incremental-lsn or --incremental-basedir配合使用。

--incremental-basedir=DIRECTORY

指定一個包換全庫備份的目錄作為增量備份的基礎數據庫

--incremental-dir=DIRECTORY

指定增量備份與全庫備份合並去建立一個新的全備份的目錄。

--incremental-lsn=LSN

指定增量備份將要開始的LSN,它替代選項--incremental-basedir

--kill-long-queries-timeout=SECONDS

該選項指定innobackupex在開始FLUSH TABLES WITH READ LOCK和殺掉這些阻礙他的查詢之間的時間的等待時間,以秒計算,默認為0,意味着innobackupex不嘗試殺任何查詢,
該選項需要process and super權限

--kill-long-query-type=all|select

指定解鎖全局鎖時將被殺掉的查詢類型,默認是all

--lock-wait-timeout=SECONDS

運行FLUSH TABLES WITH READ LOCK之前,innobackupex等待阻塞查詢的時間數(秒數)

--lock-wait-threashold=SECONDS

選項指定查詢運行時間閥值,當innobackupex發現長運行查詢伴隨着--lock-wait-timeout的一個非0值,

--lock-wait-query-type=all|update

指定innobackupex發出一個全局鎖之前什么類型的查詢允許完成

--lock-copy-interval=#

指定日志日志復制線程檢車完成的時間間隔,以毫秒計算

--move-back

移動之前的所有備份從一個備份目錄到他們的原始位置

--no-lock

不允許使用flush tables with read lock表鎖。如果你的所有表示INNODB並且你不關心二進制日志備份的位置。如果有任何DDL語句被執行或任何非INNODB表上的update操作,這個選項就不能使用

--notimestamp

把備份放在一個通過選項backup-root-dir指定的子目錄里

--no-version-check

禁止版本檢查

--parallel=NUMBER-OF-THREADS

該選項接收一個整數,xtarbackup子進程將用於同時備份文件的並發數。如果有多個.ibd文件可以並行,如果只有一個表空間文件,則該選項無效

--password=PASSWORD

指定連接到數據庫的賬戶密碼

--port=PORT

該選項指定通過TCP/IP連接到數據庫時所用的端口

--rebuild-indexes

只有用--apply-log選項時它才有效,當應用日志后使得xtrabackup重建所有的二級索引。一般用於准備簡約備份

--rebuild-threas=NUMBER-OF-THREADS

當一起使用選項--apply-log and --rebuild-indexes選項時才有用,使用后,當重建索引時,xtrabackup處理表空間時用一定數量的線程的並行模式

--redo-only

選項用於准備全庫備份和合並處最有一個備份外的所有增量備份。它強制xtrabackup忽略“rollback”階段只做“redo”.

--rsync

使用rsync工具優化本地文件傳輸。它讓xtrabackup使用rsync復制所有非innoDB文件,而不是使用多個cp

--safe-slave-backup

停止從SQL進程並等待啟動備份直到slave_open_temp_tables的值為0。如果沒有打開臨時表,備份會進行,否則SQL進程將啟動並直到沒有打開的臨時表時停止。如果slave_open_temp_tables在--
safe-slave-backup-timeout秒后沒有變成0,則備份會失敗。備份結束后,從SQL進程將重新啟動

--safe-slave-backup-timeout=SECONDS

--safe-slave-backup要等slave_open_temp_tables變成0的時間,默認為300秒

--scopt=SCP-OPTIONS

當參數--remost-host指定時傳遞給scp的參數

--slave-info

當備份一個復制從庫操作的時候用,它打印二進制日志的position和主庫的名字,它頁把這些信息寫入xtrabackup_slave_info文件作為一個CHANGE MASTER命令

--socket=SOCKET

指定連接到本地數據庫sever時使用的一個unix domain socket,它沒有修改的傳入mysql子進程

--sshopt=SSH-OPTIONS

當使用參數--remost-host時,使用ssh的命令行參數

--stream=STREMNAME

當使用流備份時使用的特定格式。備份將以特定格式傳到STDOUT。支持的格式為tar and xbstream

--tables-file=FILE

指定備份的表的列表,格式為database.tablename

--throttle=IOS

指定I/O操作的數量/秒。該參數只適用於備份階段。不適用於參數--apply-log,--copy-back

--tmpdir=DIRECTORY

在參數--stream使用時指定,是指臨時文件被存儲的位置

--use-memory=#

該參數只能和參數--apply-log配合使用,被用於xtrabackup做creash恢復時准備鎖使用的內存量(單位:字節)。也支持其他單位,如:1MB,1M,1GB,1G

--user=USER

指定連接到mysql時使用的用戶名

--version

顯示innobackupex的版本信息和版權等信息

--version-check

指定該選項后,innobackupex將在建立一個連接后,在備份階段執行一個版本檢查

xtrabackup相關參數

--apply-log-only

這個參數使在准備備份時,只執行重做階段,這對於增量備份非常重要。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM