天天看點

mysql全備份xtrabackup(innobackupex)方式

mysql全備份xtrabackup(innobackupex)方式

1.下載下傳安裝xtrabackup

https://www.percona.com/downloads/Percona-XtraBackup-LATEST/

安裝

yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL libev-devel
rpm -ivh percona-xtrabackup-24-2.4.9-1.el7.x86_64.rpm
           

檢視

rpm  -ql   percona-xtrabackup-24
           
mysql全備份xtrabackup(innobackupex)方式

備份方式檢視

man innobackupex
           
mysql全備份xtrabackup(innobackupex)方式

2.建立一個使用者專門做資料庫備份

grant reload,process,lock tables,replication client on *.* to 'admin'@'localhost'   identified by '123456';
flush privileges;
           
mysql全備份xtrabackup(innobackupex)方式

3.備份

//備份
innobackupex --user=admin  --password=123456  /full_xtrabackup
//檢視備份
 cd /full_xtrabackup/2021-06-02_10-37-32
           
mysql全備份xtrabackup(innobackupex)方式
mysql全備份xtrabackup(innobackupex)方式

4.預備

将備份的檔案和備份時産生的日志檔案合并

innobackupex --apply-log --redo-only --user=admin  --password=123456 /full_xtrabackup/2021-06-02_10-37-32/
           

5.制造故障

rm -rf /usr/local/mysql/data/*
           

此時資料庫執行個體是啟動的,資料可以通路,但是資料庫中的表已經沒有了

關閉mysql

pkill -9 mysqld
           

6.開始恢複備份

innobackupex --copy-back  /full_xtrabackup/2021-06-02_10-37-32/
           
mysql全備份xtrabackup(innobackupex)方式

修改檔案權限

cd /usr/local/mysql
chown -R mysql.mysql .
           

7.重新開機MySQL服務

service mysql start