前提:xtrabackup、mysql安裝完成,建立測試庫reading、測試表test,並插入三條數據。
1、全備:
innobackupex --user=root --password=123 /backup/all
則在/back/all下出現一個備份文件夾:/backup/all/2015-12-31_02-26-22/
(在恢復時,注意要先關閉服務器,並且將 datadir 的目錄先清空,在恢復數據后一定需要重置該目錄的權限)
可以在備份時直接壓縮以節約磁盤空間:
innobackupex --user=root --password=123 --stream=tar /backup/all | gzip>/backup/all/compress/all_backup.tar.gz
不過注意解壓需要手動進行,並加入 -i 的參數,否則無法解壓出所有文件
tar zxfi /backup/all /compress/all_backup.tar.gz
innobackupex --user=root --password=123 --apply-log /backup/all/compress
innobackupex --user=root --password=123 --copy-back /backup/all/compress
2、關閉mysql服務,模擬恢復數據
service mysql stop
cd /mnt/data/mysql
mv data data.bk
innobackupex --user=root --password=123 --apply-log /backup/all/2015-12-31_02-26-22/
innobackupex --user=root --password=123 --copy-back /backup/all/2015-12-31_02-26-22/
innobackupex --incremental /backup/incrememtalbackup/2015-12-31_04-30-07/ --incremental-basedir=/backup/all/2015-12-31_02-26-22/
3、修改回復的數據文件權限:
cd /mnt/data/mysql
chown -R mysql.mysql /mnt/data/mysql/data
4、啟動mysql服務,登錄mysql,檢查數據:
service mysql start
mysql -uroot -p123
mysql>select * from reading.test;
