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