mysql5.7 使用XtraBackup2.4 全量備份還原

下載 XtraBackup


mysql5.7我們使用 XtraBackUp2.4版本 下面是網址


mysql5.7 使用XtraBackup2.4 全量備份還原

下載文件為 percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm


進行安裝


預先安裝 libev perl-DBD-MySQL perl-Digest-MD5


yum -y install libev

yum -y install perl-DBD-MySQL

yum -y install perl-Digest-MD5

或者一次安裝

yum -y install libev perl-DBD-MySQL perl-Digest-MD5

如果不安裝依賴直接安裝rpm會報錯

mysql5.7 使用XtraBackup2.4 全量備份還原


rpm -ivh percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm

mysql5.7 使用XtraBackup2.4 全量備份還原


驗證

rpm -qa | grep perc

mysql5.7 使用XtraBackup2.4 全量備份還原


創建備份用戶


grant reload,lock tables,replication client,create tablespace,super, PROCESS ,INSERT,SELECT on *.* to 'backup'@'%' identified by '123456';


flush privileges;


全量備份

innobackupex --defaults-file=/etc/my.cnf --user=backup --password=123456 --socket=/usr/local/mysql/mysql.sock /usr/local/mysqlbackup/


還原全量備份

上一步產生的備份文件是按時間戳產生的目錄,我們來看下我們的剛才產生的全備文件

mysql5.7 使用XtraBackup2.4 全量備份還原

一 . 如果我們想要使用2020-04-11_08-26-09進行還原,直接進行還原是不行的,需要先對其進行prepare處理,處理成功後才能使用其進行還原

innobackupex --apply-log --use-memory=100M /usr/local/mysqlbackup/2020-04-11_08-26-09

二. 關閉mysql服務

systemctl stop mysql

systemctl status mysql

mysql5.7 使用XtraBackup2.4 全量備份還原


三. 清空mysql data目錄

cd /usr/local/mysql/data/

rm -rf *

如果是生產環境直接還原,則不建用刪除文件,可以將文件目錄重新命名,然後新建一個數據目錄,如果還原驗證 沒有問題,在刪除老數據,如果有問題,可以將老數據還原回來

cd /usr/local/mysql/data/

mv data olddata

mkdir data


四. 開始還原

innobackupex --copy-back /usr/local/mysqlbackup/2020-04-11_08-26-09


五. 重置權限給mysql

chown -R mysql:mysql /usr/local/mysql/data

六. 啟動mysql服務

systemctl restart mysql

systemctl status mysql

mysql5.7 使用XtraBackup2.4 全量備份還原


分享到:


相關文章: