innobackup遠端流式備份及其恢復主要操作

davie2020發表於2024-07-24

innobackup遠端流式備份及其恢復主要操作

近期工作中遇到了磁碟空間緊張,但資料量較大的困擾。一直不太喜歡壓縮流式多執行緒(較為複雜),今天專門抽時間做了一下測試,特意記錄下來,方便以後使用。其實這個還是有很多優點,尤其是磁碟空間有限的情況下,不得不採用壓縮流式備份了。

注意:
1、需要安裝壓縮軟體 qpress
2、需要指定環境變數路徑
3、這是在從庫備份直接流式傳輸至遠端,需要配置互信免密

# 備份方式
#!/bin/bash
innobackupex --defaults-file=/etc/my.cnf --slave-info --no-version-check --no-timestamp --socket=/tmp/mysql.sock --user=bkuser --password='Pwd2024@Root!' \
--compress --parallel=4 --stream=xbstream /backup/xtrabackup| ssh root@192.168.0.76 "cat - > /backup/xtrabackup/xtra_full_inno_`date +%Y%m%d%H%M%S`.xbstream"

chmod +x innobackup.sh

nohup innobackup.sh >/tmp/innobackup.log &

# 還原方式
mkdir /backup/test_backup
xbstream -x < xtra_full_inno_20240724145015.xbstream -C /backup/test_backup
ll /backup/test_backup/
cd /backup/test_backup/

for f in `find ./ -iname "*\.qp"`; do qpress -dT2 $f $(dirname $f) && rm -rvf $f; done

#應用日誌與恢復
innobackupex --defaults-file=/etc/my.cnf --use-memory=1G --parallel=4 --apply-log /backup/test_backup
#innobackupex --defaults-file=/etc/my.cnf --move-back /backup/test_backup

相關文章