天天看点

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