mysql 备份文件.xbstream 恢复

发布时间 2023-10-24 18:07:59作者: 九哥不是很会

数据库备份文件的恢复

1. 可通过xtrabackup工具恢复,官方下载地址:https://www.percona.com/downloads/XtraBackup/LATEST/ 选择对应版本安装

注意:要选择和数据库版本对应的工具

2. 全量恢复

#全备文件:full_backup.xbstream
#恢复mysql数据文件目录:/rds/mysql

# 恢复全备
xbstream -x -C /rds/mysql < full_backup.xbstream
# 解压缩
innobackupex --decompress --parallel=6 --compress-threads=6 /rds/mysql

#应用日志
innobackupex --defaults-file=/rds/mysql/backup-my.cnf --use-memory=256M --apply-log /rds/mysql

#修改数据目录权限
chown -R -f mysql:mysql /rds/mysql

# 启动mysql服务
service mysqld restart

3. 全量+增量恢复

#全备文件:full_backup.xbstream
#增备文件:increase_backup.xbstream
#恢复mysql数据文件目录:/rds/mysql

# 1. 恢复全备
xbstream -x -C /rds/mysql < full_backup.xbstream
innobackupex --decompress --parallel=6 --compress-threads=6 /rds/mysql
innobackupex --defaults-file=/rds/mysql/backup-my.cnf --use-memory=256M --apply-log /rds/mysql --redo-only

# 2. 恢复增备,如果有多个增备,重复这一步,注意修改/tmp/increase_backup的增备临时目录
xbstream -x -C /tmp/increase_backup < increase_backup.xbstream
innobackupex --decompress --parallel=6 --compress-threads=6 /tmp/increase_backup
innobackupex --defaults-file=/rds/mysql/backup-my.cnf --use-memory=256M --apply-log /rds/mysql --incremental-dir=/tmp/increase_backup  --redo-only
rm -rf /tmp/increase_backup

# 3. apply log
innobackupex --defaults-file=/rds/mysql/backup-my.cnf --use-memory=256M --apply-log /rds/mysql
chown -R -f mysql:mysql /rds/mysql

# 4. 启动mysql服务
service mysqld restart