Mysql備份恢復學習筆記
完整備份
創建備份目錄:
#mkdir /back/full
備份:#innobackupex --user=root --password=‘123‘ /back/full
完整備份恢復流程
關閉數據庫:#
systemctl stop mysqld
清理環境:#rm -rf /var/lib/mysql/*
#rm -rf /var/log/mysqld/log
恢復之前的驗證恢復
#innobackupex --apply-log /back/full/完整備份目錄
確認數據庫目錄
#cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
恢復數據
#innobackupex --copy-back /back/full/完整備份目錄
修改權限
chown -R mysql.mysql /var/lib/mysql/*
啟動數據庫
#systemctl start mysqld
增量備份
第一天:完整備份
#innobackupex --user=root --password=‘123‘ /back/full1
添加數據進庫
第二天:增量備份
#innobackupex --user=root --password=‘123‘ --incremental /back/full1 --incremental-basedir=/back/full1/完整備份目錄
.........
.........
增量備份恢復流程
停止數據庫
#systemctl stop mysqld
清理環境
#rm -rf /var/lib/mysql/*
#rm -rf /var/log/mysqld.log
依次重演回滾
第一天的數據
#innobackupex --apply-log --redo-only /back/full1/完整備份目錄
第二天#innobackupex --apply-log --redo-only /back/full1/完整備份目錄 --incremental-dir=/back/full1/增量備份目錄
重復之前的操作
恢復數據
#innobackupex --copy-back /back/full1/回滾之後的完整備份目錄
修改權限
#chown -R mysql.mysql /var/lib/mysql
重啟數據庫
#systemctl restart mysqld
差異備份
第一天:完整備份
#innobackupex --user=root --password=‘123‘ /back/full2
插入數據
第二天:差異備份
#innobackupex --user=root --password=‘123‘ --incremental /back/full2 --incremental=basedir=/back/full2/完整備份目錄
..........
..........差異備份恢復流程
停止數據庫
#systemctl stop mysqld
清理環境
#rm -rf /var/lib/mysql/*
#rm -rf /var/log/mysqld.log
恢復全量的redo log
#innobackupex --apply-log --redo-only /back/full2/完全備份目錄
恢復差異的redo log
#innobackupex --apply-log --redo-only /back/full2/完全備份目錄 --incremental-dir=/back/full2/某個差異備份
復制數據文件
#innobackupex --copy-back /back/full2/回滾之後的完整備份目錄
修改權限
#chown -R mysql.mysql /var/lib/mysql
##啟動數據庫
#systemctl start mysqld
Mysql備份恢復學習筆記