說明:本章節會介紹如何通過備份文件恢復數據
操作場景
您可根據業務需要,參考下載備份文件,并通過備份文件進行本地存儲備份或者恢復數據。本章節以CentOS 7.4 64bit,MySQL5.6為例演示如何恢復數據。

備份文件不支持恢復到本地為Windows操作系統的數據庫。
前提條件
通過下載備份文件恢復數據到自建MySQL,請確保恢復目標MySQL版本不低于備份源RDS for MySQL版本。
恢復數據過程中,您可通過命令查看任務進程:
ps -ef | grep mysql
操作步驟
下載qpress程序,并上傳到ECS進行安裝。
在下載文件“qpress-11-linux.x64.tar”, 并上傳到ECS上。
tar -xvf qpress-11-linux-x64.tar
mv qpress /usr/bin/
下載XtraBackup軟件,并上傳到ECS進行安裝。

請確保XtraBackup為2.4.9及其以上版本,否則后續步驟會報錯。
在網站下載文件“percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm”,并上傳到ECS上。
rpm -ivh percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm --nodeps --force
在ECS上解壓下載好的全備文件。
1. 創建一個臨時目錄backupdir。
mkdir backupdir
2. 解壓文件。
xbstream -x -p 4 < ./全備文件.qp -C ./backupdir/
innobackupex --parallel 4 --decompress ./backupdir
find ./backupdir/ -name '*.qp' | xargs rm -f
應用日志。
innobackupex --apply-log ./backupdir
備份數據。
1. 停止MySQL數據庫服務。
service mysql stop

如果是MySQL5.7, 需執行如下命令停止MySQL數據庫服務:
/bin/systemctl stop mysqld.service
2. 備份原來的數據庫目錄。
mv /var/lib/mysql/data /var/lib/mysql/data_bak
3. 創建新的數據庫目錄并修改目錄權限。
mkdir /var/lib/mysql/data
chown mysql:mysql /var/lib/mysql/data
拷貝全備文件,并修改目錄權限。
innobackupex --defaults-file=/etc/my.cnf --copy-back ./backupdir
chown -R mysql:mysql /var/lib/mysql/data
啟動數據庫。
service mysql start

如果是MySQL5.7, 需執行如下命令啟動數據庫:
/bin/systemctl start mysqld.service
登錄數據庫,查看數據恢復結果。
mysql -u root
show databases
查看數據恢復結果
