1.关闭mysql23306服务

service mysql23306 stop

2.将现有数据库数据备份

cp -r /data/mysql/mysql23306 /data/mysql/mysql23306-bak

3.进入数据库备份目录,找到最新的数据库备份文件(每天凌晨三点备份一次)

cd /data/backup
ll
image.png

4.创建一个临时文件夹,将备份文件拖进文件中解压

#创建23306文件夹

mkdir 23306

#拷贝最新的备份文件进23306文件夹

cp backup_23306_20220508_030001.tar.gz ./23306/

#解压

tar -zxvf backup_23306_20220508_030001.tar.gz

#删除压缩文件

rm -f backup_23306_20220508_030001.tar.gz

5.检查备份信息

ll /data/mysql/mysql23306/log/bin
vim xtrabackup_info
image.png
image.png
包含在当日的binlog,则没问题

6.删除现有数据库数据(删之前确保当前数据已备份)

/usr/local/xtrabackup/bin/xtrabackup —defaults-file=/etc/mysql/my23306.cnf —prepare —target-dir=/data/backup/23306

#检查当前的数据库数据、与备份的数据是否一致,大小一致则说明备份正确,确认一致删除现有数据库数据

cd /data/mysql/
du -h -d 1
image.png
rm -fr /data/mysql/mysql23306/data/*

7.备份数据移动到数据库数据目录(数据最终恢复)

#移动备份数据至数据库目录

mv /data/backup/23306/* /data/mysql/mysql23306/data/

#变更用户组

chown -R mysql.mysql /data/mysql/mysql23306

#重启数据库

service mysql23306 start