環境:
OS:Centos 7
1.先安裝好mysql5.6
安裝步驟情參考
http://blog.chinaunix.net/uid-77311-id-5756583.html
2.從阿里雲rds下載備份集
我這里下載的備份集如下:
hins12503237_data_20200425055654_qp.xb
3.安裝xtrabackup
[root@izwz9gxsbwybwg9n5xdi47z opt]# tar -zxvf percona-xtrabackup-2.4.7-Linux-x86_64.tar.gz
[root@izwz9gxsbwybwg9n5xdi47z opt]# mv percona-xtrabackup-2.4.7-Linux-x86_64 /opt/xtrabackup247
4.停止mysql,備份data目錄
./mysqladmin -h localhost -S /opt/mysql5640/data/mysql.sock -uroot shutdown
備份data目錄
[root@localhost mysql5640]# mv data bakdata
創建空的data目錄
[root@localhost mysql5640]# mkdir data
5.安裝好 XtraBackup 之后,使用 xbstream 命令將備份文件解包到目標目錄。
[root@localhost bin]# /opt/xtrabackup247/bin/xbstream -x -v -C /opt/mysql5640/data</soft/rds/hins12503237_data_20200425055654_qp.xb ##說明/opt/mysql5640/data是數據還原的目錄
執行后的問題是這樣的,文件都是以qp后綴命名的
[root@localhost bin]# ls -al /opt/mysql5640/data
total 3284
drwxr-xr-x 6 root root 4096 Apr 26 10:33 .
drwxr-xr-x 17 mysql mysql 4096 Apr 26 09:54 ..
-rw-r----- 1 root root 407 Apr 26 10:33 backup-my.cnf.qp
drwxr-x--- 2 root root 4096 Apr 26 10:33 db_queueflow
-rw-r----- 1 root root 3017576 Apr 26 10:33 ibdata1.qp
-rw-r----- 1 root root 229601 Apr 26 10:33 log000000000002.tokulog29.qp
drwxr-x--- 2 root root 4096 Apr 26 10:33 mysql
drwxr-x--- 2 root root 4096 Apr 26 10:33 performance_schema
-rw-r----- 1 root root 44921 Apr 26 10:33 rds_table_info_json_51822.log
drwxr-x--- 2 root root 4096 Apr 26 10:33 test
-rw-r----- 1 root root 528 Apr 26 10:33 tokudb.directory.qp
-rw-r----- 1 root root 642 Apr 26 10:33 tokudb.environment.qp
-rw-r----- 1 root root 527 Apr 26 10:33 tokudb.rollback.qp
-rw-r----- 1 root root 164 Apr 26 10:33 xtrabackup_binlog_info.qp
-rw-r----- 1 root root 115 Apr 26 10:33 xtrabackup_checkpoints
-rw-r----- 1 root root 773 Apr 26 10:33 xtrabackup_info.qp
-rw-r----- 1 root root 425 Apr 26 10:33 xtrabackup_logfile.qp
-rw-r----- 1 root root 162 Apr 26 10:33 xtrabackup_slave_filename_info.qp
-rw-r----- 1 root root 194 Apr 26 10:33 xtrabackup_slave_info.qp
使用 qpress 命令將目標目錄下所有以.qp結尾的文件都解壓出來.
[root@localhost bin]# /opt/xtrabackup247/bin/xtrabackup --decompress --remove-original --target-dir=/opt/mysql5640/data ##--remove-original的意思是刪除解壓后原來的壓縮文件
./xtrabackup version 2.4.7 based on MySQL server 5.7.13 Linux (x86_64) (revision id: 05f1fcf)
200426 10:35:24 [01] decompressing ./xtrabackup_slave_filename_info.qp
sh: qpress: command not found
cat: write error: Broken pipe
Error: thread 0 failed.
解決辦法:
# wget http://www.quicklz.com/qpress-11-linux-x64.tar 或是直接登陸網站進行下載
# tar xvf qpress-11-linux-x64.tar
# cp qpress /usr/bin
Prepare 備份文件
備份解壓出來之后,需要執行以下命令進行 apply log 操作。
/opt/xtrabackup247/bin/innobackupex --defaults-file=/opt/mysql5640/conf/my.cnf --apply-log /opt/mysql5640/data
6.重新修改mysql目錄權限
[root@localhost mysql5640]# cd /opt/mysql5640
[root@localhost mysql5640]# chown -R mysql:mysql ./data
7.啟動數據庫
./mysqld_safe --defaults-file=/opt/mysql5640/conf/my.cnf --user=mysql &
[root@localhost bin]# ./mysql -h localhost -uroot -S /opt/mysql5640/data/mysql.sock
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
這里是無法登錄數據庫的,我們可以嘗試跳過密碼啟動數據庫
在啟動配置項里添加如下項目,然后進程重新啟動
skip-grant-tables=1
--The End --