mysql实例备份和单库备份_通过Xtrabackup实现MySQL实例的全库备份与按需单库恢复...

在实际的生产环境中,为了管理方便,我们一般是通过 Xtrabackup实现实例的全库备份,即将实例上的所有数据库备份。

但是,考虑到快速恢复 我们常常面临的需求是快速还原单个数据库。针对初学者来说,网上相关的资料不是很多,以下的测试工作是我们为实现实例的全库备份与按需单库恢复的相关验证。

第一部分数据库测试环境

Step 1创建 四个用户数据库

3b32025e9e6a4b4da87cae7a40fecaf6.png

eae4d74b89947c0ec1a9e1e608330c3f.png

770658bb592626e8e7955f0a10dbf176.png

e89a1577a841b2aea989b7a1685c28a0.png

Step2 四个数据库创建相同的表,插入同样的数据。

执行的代码一样

CREATE TABLE `test` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`str` varchar(255) NOT NULL,

`state` tinyint(1) unsigned zerofill DEFAULT NULL,

`state2` tinyint(2) unsigned zerofill DEFAULT NULL,

`state3` tinyint(3) unsigned zerofill DEFAULT NULL,

`state4` tinyint(4) unsigned zerofill DEFAULT NULL,

PRIMARY KEY (`id`)

)

insert into test (str,state,state2,state3,state4) values('csdn',4,4,4,4);

step 3 显示验证前所有数据库

9da73b9ce85b481b203fc820f81658f4.png

表数据查询显示

2ab9d2c471635dadfada4d9e7a778b3f.png

第二部分 主要测试步骤和执行命令

Step 1 执行备份命令:

e9a269b70303b159bc91959dc6cf1865.png

(innobackupex  --defaults-file=/data/mysql/support-files/my_default.cnf  --user=用户 --password=密码 /data/backup/full)

备份目录为: /data/backup/full

Step 2 关闭数据库并删除数据库文件

426f238ed0e2ff012ffcb403a71aebb1.png

1bc94c0e96432b53986fea3ddf8bfd03.png

Step 3 将备份目录中不需要的数据备份文件迁移出去

(本验证案例为 数据库testaa,testbb,testcc )

5ac1e71f3c9e3c191c0ff865954755d4.png

d7ecb9e33ca1fbf6bfd47a82728eb029.png

Step 4 执行恢复命令

f2471eae7a74865b9c5d37fd77b17131.png

(命令如下:innobackupex --defaults-file=/data/mysql/support-files/my_default.cnf  --user=用户 --password=密码 --copy-back  /data/backup/full/2018-04-03_09-42-58)

查询结果OK

a79b75a806ddfd51a3070ec61420577b.png

Step 5 赋予权限

8b08c12412f38420da0835a32c3ac19b.png

(如果不赋予权限,报错信息:Starting MySQL... ERROR! The server quit without updating PID file (/XXXX/XXXX/XXX/XXXX.pid). 还要留意,需要先还原,让后再赋予权限)

Step 6 重启mysql 服务

fa507f4748e1d58e0b75ac8f0b0e68f4.png

第三部分数据验证

1.还原后,查询显示所有的数据,可以看到 数据库testaa,testbb,testcc没有还原。

0ba0f969073acec47d24e3bf1a20f1be.png

2.查询还原的数据库,数据正常,和还原前无差异。

06ccd599d1229196f057a89c65888e3e.png

以上验证测试说明,可以在数据库全实例备份的基础上实现指定数据库的还原。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值