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

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

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

第一部分数据库测试环境

Step 1创建 四个用户数据库

9a51d3d4b8ff6576c97c80777333faca.png

6b5a1709731d0a09a95c89371f7cbff7.png

aafc8ad839162068c4bb4ca2f0db345e.png

0d6b4ae8bdd9c6cf2a6ebc227d08b38b.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 显示验证前所有数据库

d6d9331912344409fdfcb8845df1c18b.png

表数据查询显示

280031dfe039cc475084f773c82257d9.png

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

Step 1 执行备份命令:

c437e6636a6775e8c54cf5ac59ed38de.png

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

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

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

60d4cc2bc543bc5fe6cb88d39dd330af.png

c392fa8ac0e42a7fafff7334cc769c0d.png

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

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

4579dfdbd3a48efcab3ca6e66df3a77d.png

1923fd199ad8107ecd94ceec36888558.png

Step 4 执行恢复命令

cfd90e6a7cc24fa6e45eb36c26376869.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

1adb500f6ff40fc42af5725d5e1705bf.png

Step 5 赋予权限

42ca185800a1de89827f08b32dcec17f.png

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

Step 6 重启mysql 服务

f48e7be663c3f11b20d16fb1c44c11af.png

第三部分数据验证

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

2c4da70990cb9686ed518ae33ea52131.png

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

0dd2c0cd5cf197a7876f0ba683aa2ab1.png

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值