频道栏目
首页 > 资讯 > 其他综合 > 正文

innobackupex备份恢复详解

15-08-03        来源:[db:作者]  
收藏   我要投稿

不想多说什么没用的,直接看实际操作吧。。

还是说一句吧,就一句,innobackupex在备份过程中,会给非innodb表上读锁,会给innodb表上一个锁我不知道叫什么,总之不能更改表结构。我比较愚钝,不知道那叫什么锁。最下面有张备份的过程详细图,可以看一下

环境:10.186.20.45:3309

test.t

insert into t select 8;

基础备份1;

第一步:

time(看备份执行时间) innobackupex –user=root –password=redhat –socket=/tmp/mysql3309.sock –defaults-file=/usr/local/mysql3309/my.cnf –database=test /data/backup/back3309/base –no-timestamp

第二步;
新建表t1,并插入数据

create table t1(id int);

insert into t1 select 1;

t syntax to use near ” at line 1
mysql> select * from t;
+——+
| id |
+——+
| 8 |
+——+
1 row in set (0.00 sec)

mysql> create table t1(id int);
Query OK, 0 rows affected (0.03 sec)

mysql>
mysql> insert into t1 select 1;
Query OK, 1 row affected (0.01 sec)
Records: 1 Duplicates: 0 Warnings: 0

mysql>
mysql>
mysql> show variables like ‘autocommit’;
+—————+——-+
| Variable_name | Value |
+—————+——-+
| autocommit | ON |
+—————+——-+
1 row in set (0.00 sec)

mysql>

第三步:

建立增量备份

innobackupex –user=root –password=redhat –socket=/tmp/mysql3309.sock –defaults-file=/usr/local/mysql3309/my.cnf –database=test –incremental /data/backup/back3309/incremental1/ –incremental-basedir=/data/backup/back3309/base –no-timestamp –parallel=2

[root@mysql45 base]# ll
total 208924
-rw-r–r– 1 root root 295 Aug 2 17:36 backup-my.cnf
-rw-r—– 1 root root 213909504 Aug 2 17:36 ibdata1
drwx—— 2 root root 4096 Aug 2 17:36 test
-rw-r–r– 1 root root 20 Aug 2 17:36 xtrabackup_binlog_info
-rw-r—– 1 root root 95 Aug 2 17:36 xtrabackup_checkpoints
-rw-r–r– 1 root root 706 Aug 2 17:36 xtrabackup_info
-rw-r—– 1 root root 2560 Aug 2 17:36 xtrabackup_logfile
[root@mysql45 base]# pwd
/data/backup/back3309/base
[root@mysql45 base]#

第四步:

进行数据恢复

过程::恢复基础备份,应用增量备份,对合并好的备份做apply操作,回滚未提交数据。

恢复基础备份:time innobackupex –apply-log –redo-only –use-memory=400M /data/backup/back3309/base

应用增量备份:time innobackupex –apply-log –use-memory=400M /data/backup/back3309/base –incremental-dir=/data/backup/back3309/incremental1/

对合并好的备份做apply操作,回滚未提交数据:time innobackupex –apply-log –use-memory=400M /data/backup/back3309/base
[root@mysql45 test]# ll
total 216
-rw-r–r– 1 root root 8556 Aug 2 18:02 t1.frm
-rw-r–r– 1 root root 98304 Aug 2 18:02 t1.ibd
-rw-r—– 1 root root 8556 Aug 2 18:02 t.frm
-rw-r—– 1 root root 98304 Aug 2 17:36 t.ibd
[root@mysql45 test]#

第五步:

cp数据到数据库data目录

[root@mysql45 base]# cp -r test /usr/local/mysql3309/data/

更改文件所属,恢复完成。

这货限制传大于2M的图???差评,为什么我上上个博客就可以。日了狗了

这里写图片描述

 

相关TAG标签
上一篇:git在win7下安装的问题
下一篇:Android Broadcast组件权限绕过漏洞
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站