使用xtrabackup工具簡單實現完全備份和增量備份並還原

一、實驗環境

1、準備兩臺虛擬機,系統centos7

2、 兩臺虛擬機裝好mariadb-server

3、兩臺主機配置好epel源,下載新版本的xtrabackup rpm包

使用xtrabackup工具簡單實現完全備份和增量備份並還原

二、實驗步驟:

  • 在原主機上實現

1、完全備份

mkdir /backups/{full,inc1,inc2} -pv
xtrabackup --backup --target-dir=/backups/full/

2、第一次修改數據

mysql hellodb -e ”insert hellodb.students (name,age) values('a',18)“

3、第一次增量備份

xtrabackup --backup --target-dir=/backups/inc1/ --incremental-basedir=/backups/full

4、第二次修改數據

mysql -e "insert hellodb.students (name,age) values('b',28);"

5、第二次增量備份

xtrabackup --backup --target-dir=/backups/inc2/ --incremental-basedir=/backups/inc1/
scp -r /backups/ 目標主機:/

  • 在目標主機上實現

1、清空數據,停服務

systemctl stop mariadb
rm -rf /data/mysql/*

2、預處理數據庫

xtrabackup --prepare --apply-log-only --target-dir=/backups/full
xtrabackup --prepare --apply-log-only --target-dir=/backups/full --incremental-dir=/backups/inc1/
xtrabackup --prepare --target-dir=/backups/full --incremental-dir=/backups/inc2

3、複製數據

xtrabackup --copy-back --target-dir=/backups/full

4、權限和啓動服務

chown -R mysql.mysql /data/mysql/
systemctl start mariadb

三、實驗總結:

xtrabackup版本升級到2.4後,相比之前的2.1有了比較大的變化:
innobackupex 功能全部集成到 xtrabackup 裏面,只有一個 binary程序,另
外爲了兼容考慮,innobackupex作爲 xtrabackup 的軟鏈接,即xtrabackup現
在支持非Innodb表備份,並且Innobackupex在下一版本中移除,建議通過
xtrabackup替換innobackupex xtrabackup備份工具適用於較大型的數據庫文件備份,比mysqldump適用場景更多一些。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章