利用Xtrabackup进行单库备份、单表恢复实例

本文介绍了如何使用Xtrabackup进行单个数据库的备份以及特定表的恢复操作。内容包括环境准备、选择对应版本的Xtrabackup、权限设置、单库备份、数据变更、增量备份、预备完整备份、合并增量备份以及详细的数据恢复步骤,旨在解决实际工作中遇到的单表问题。

写在前面:
笔者在实际工作中发现,对于数据恢复来说,更多情况下面临的问题是:单个数据库中的某个或者某几个表出现了问题,很少对整个库的数据进行恢复,除非硬盘损坏或者手抖执行了DROP,笔者就单库备份,单表恢复的场景进行记录(需要全库备份、全库恢复需求的同行,自行百度),如有不当之处,望请留言指正,不胜感激!

环境准备:
1)Xtrabackup版本的选择
不同版本的MySQL需要使用不同版本的 Percona XtraBackup。
笔者的MySQL版本是5.6的,需要下载2.2版本的Percona XtraBackup,另外MySQL5.1对应XtraBackup2.1,MySQL5.7对应XtraBackup2.4(笔者,没有验证,仅供参考)

[root@backup ~]# xtrabackup --version
xtrabackup version 2.2.13 based on MySQL server 5.6.24 Linux (x86_64) (revision id: 70f4be3)

Percona XtraBackup2.2下载地址

    2)创建一个最小化备份权限用户

mysql> grant reload,process,lock tables,replication client on . to xtrauser@‘localhost’ identified by ‘xtrauser@123’;
mysql> flush privileges;

    3)这里利用的是表空间传输特性进行的数据恢复,所以你得是InnoDB表,而且开启了innodb_file_per_table参数

单库备份:

[root@backup ~]# innobackupex --databases=‘bailidb’ --defaults-file=/home/data/mysql3306/my.cnf --user=‘xtrauser’ --password=‘xtrauser@1

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值