【MySql】innobackupex 增量备份的bug

1 搭建测试环境

mysql> show tables;

+----------------+

| Tables_in_test |

+----------------+

| sbtest         |

+----------------+

1 row in set (0.01 sec)

2 全量备份

[root@rac3 mysql]# innobackupex --defaults-file=/etc/my.cnf --user=root  /opt/mysql/backup/base  

3 创建新的表

mysql> create table t1 as select * from sbtest;

mysql> create table t2 as select * from sbtest limit 1000; 

mysql> create table t3 as select * from sbtest limit 1000; 

mysql> show tables;

+----------------+

| Tables_in_test |

+----------------+

| sbtest         |

| t1             |

| t2             |

| t3             |

+----------------+

4 rows in set (0.00 sec)

4 增量备份:

[root@rac3 mysql]# innobackupex --defaults-file=/etc/my.cnf --user=root  --incremental --incremental-basedir=/opt/mysql/backup/base /opt/mysql/backup/delta

5 关闭数据库,删除数据

[root@rac3 mysql]# service mysql stop

Shutting down MySQL.                                       [确定]

[root@rac3 mysql]#rm -fr data

6 恢复数据

全量恢复:

[root@rac3 mysql]# innobackupex --defaults-file=/etc/my.cnf --user=root --apply-log --redo-only  /opt/mysql/backup/base/2011-12-11_20-47-06

增量恢复:

[root@rac3 mysql]# innobackupex --defaults-file=/etc/my.cnf --user=root --apply-log --redo-only /opt/mysql/backup/base/2011-12-11_21-12-46  --incremental-dir=/opt/mysql/backup/delta/2011-12-11_21-25-50

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy

and Percona Inc 2009-2011.  All Rights Reserved.

This software is published under

the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

IMPORTANT: Please check that the apply-log run completes successfully.

           At the end of a successful apply-log run innobackupex

           prints "completed OK!".

111211 21:32:15  innobackupex: Starting ibbackup with command: xtrabackup_55  --defaults-file="/etc/my.cnf" --prepare --target-dir=/opt/mysql/backup/base/2011-12-11_21-12-46 --apply-log-only --incremental-dir=/opt/mysql/backup/delta/2011-12-11_21-25-50

xtrabackup_55 version 1.6.3 for Percona Server 5.5.9 Linux (x86_64) (revision id: 292)

incremental backup from 8809430318 is enabled.

xtrabackup: cd to /opt/mysql/backup/base/2011-12-11_21-12-46

xtrabackup: This target seems to be already prepared.

xtrabackup: xtrabackup_logfile detected: size=2097152, start_lsn=(8810280564)

xtrabackup: page size for /opt/mysql/backup/delta/2011-12-11_21-25-50/ibdata1.delta is 16384 bytes

Applying /opt/mysql/backup/delta/2011-12-11_21-25-50/ibdata1.delta ...

xtrabackup: Temporary instance for recovery is set as followings.

xtrabackup:   innodb_data_home_dir = ./

xtrabackup:   innodb_data_file_path = ibdata1:10M:autoextend

xtrabackup:   innodb_log_group_home_dir = /opt/mysql/backup/delta/2011-12-11_21-25-50

xtrabackup:   innodb_log_files_in_group = 1

xtrabackup:   innodb_log_file_size = 2097152

111211 21:32:15 InnoDB: Using Linux native AIO

xtrabackup: Starting InnoDB instance for recovery.

xtrabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)

111211 21:32:15 InnoDB: The InnoDB memory heap is disabled

111211 21:32:15 InnoDB: Mutexes and rw_locks use GCC atomic builtins

111211 21:32:15 InnoDB: Compressed tables use zlib 1.2.3

111211 21:32:15 InnoDB: Using Linux native AIO

111211 21:32:15 InnoDB: Warning: innodb_file_io_threads is deprecated. Please use innodb_read_io_threads and innodb_write_io_threads instead

111211 21:32:15 InnoDB: Initializing buffer pool, size = 100.0M

111211 21:32:15 InnoDB: Completed initialization of buffer pool

111211 21:32:15 InnoDB: highest supported file format is Barracuda.

InnoDB: The log sequence number in ibdata files does not match

InnoDB: the log sequence number in the ib_logfiles!

111211 21:32:15  InnoDB: Database was not shut down normally!

InnoDB: Starting crash recovery.

InnoDB: Reading tablespace information from the .ibd files...

InnoDB: Last MySQL binlog file position 0 321824, file name ./mysql-bin.000001

[notice (again)]

  If you use binary log and don't use any hack of group commit,

  the binary log position seems to be:

InnoDB: Last MySQL binlog file position 0 321824, file name ./mysql-bin.000001

xtrabackup: starting shutdown with innodb_fast_shutdown = 1

111211 21:32:16  InnoDB: Starting shutdown...

111211 21:32:16  InnoDB: Shutdown completed; log sequence number 8810280564

111211 21:32:16  innobackupex: completed OK!

拷贝文件

[root@rac3 test]# innobackupex --defaults-file=/etc/my.cnf --user=root --copy-back /opt/mysql/backup/base/2011-12-11_21-12-46

重启mysql

[root@rac3 mysql]# service mysql start

Starting MySQL...                                          [确定]

7 进行确认!

mysql> use test;     

Database changed

mysql> show tables;  

+----------------+

| Tables_in_test |

+----------------+

| sbtest         |

| t1             |

+----------------+

2 rows in set (0.00 sec)

通过以上信息可以看到innobackupex 不能备份全量备份之后到增量备份之前的新建数据对象。

时间: 2024-09-20 19:54:07

【MySql】innobackupex 增量备份的bug的相关文章

【MySql】innobackupex 增量备份和恢复

   innobackupex 是使用pl封装了xtrabackup之后的工具,在使用的时候会调用xtrabackup. 1 创建环境 -bash-3.2$ mysql mysql> use test;                                Database changed mysql> select count(1) from t1;                           +----------+ | count(1) | +----------+ |

mysql自动增量备份的实例方法(本地备份与远程备份)_Mysql

1.本地备份编写自动备份脚本:vim /var/lib/mysql/autobak内容如下: 复制代码 代码如下: cd /data/home/mysqlbakrq=` date +%Y%m%d `/usr/local/mysql/bin/mysqldump sqldb --flush-logs -uroot -p123456 --opt > 777city_$rq.sql 保存退出. chmod -777  /var/lib/mysql/autobak crontab -e00 00 * *

MYSQL数据库自动本地/异地双备份/MYSQL增量备份

构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)架构图 继续介绍Linux服务器文件备份,数据库备份,数据安全存储相关的电子商务系统架构.针对安全性有多种多样的解决方案,其中数据备份是重中之重的首要工作. 电子商务网站更加注重考虑数据安全,数据备份方案,包括本地备份.异地备份架构.其中Linux服务器的备份方案非常多,本文介绍一个大众化适用的解决方案,通过编写Shell脚本来完成自动备份.本架构包括备份网站文件.数据库,自动本地备份并FTP上传备份脚本,完成相应本地备份.异地备份

mysql数据库完美增量备份脚本

是否因为mysql太大,来回备份浪费资源带宽而发愁,如果想解决这个麻烦就需要增量备份,下面是张小三资源网修改的一份mysql的增量备份脚本,我已做了相关注释,大家自行修改下就可以用了. vi /etc/my.cnf开启日志及定期清理日志 log-bin=mysql-bin binlog_format=mixed //二进制日志自动删除的天数.默认值为0,表示"没有自动删除" expire_logs_days = 5 全备份脚本: #!/bin/bash # Name:qbk全备份脚本

MySQL利用xtrabackup进行增量备份详细过程汇总

1,创建mysql备份用户 mysql -uroot --password="" -e"CREATE USER 'backup'@'192.168.%' IDENTIFIED BY '123456'"; mysql -uroot --password="" -e"GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT, CREATE TABLESPACE, SUPERON *.* TO 'backup

mysql数据库中innobackupex xtrabackup备份/还原

大数据量备份与还原,始终是个难点.当MYSQL超10G,用mysqldump来导出就比较慢了.在这里推荐xtrabackup,这个工具比mysqldump要快很多. 1.Xtrabackup介绍 1,Xtrabackup是什么 Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup有两个主要的工具:xtrabackup.innobackupex 1.xtraback

MySQL 利用xtrabackup进行增量备份详细过程汇总

    Xtrabackup下载.安装以及全量备份请参考:http://blog.itpub.net/26230597/viewspace-1465772/ 1,创建mysql备份用户 mysql -uroot --password="" -e"CREATE USER 'backup'@'192.168.%' IDENTIFIED BY '123456'"; mysql -uroot --password="" -e"GRANT REL

mysql 利用binlog增量备份,还原实例

mysql 利用binlog增量备份,还原实例 张映 发表于 2010-09-29 分类目录: mysql 一,什么是增量备份 增量备份,就是将新增加的数据进行备份.假如你一个数据库,有10G的数据,每天会增加10M的数据,数据库每天都要备份一次,这么多数据是不是都要备份呢?还是只要备份增加的数据呢,很显然,我只要备份增加的数据.这样减少服务器的负担. 二,启用binlog vi my.cnf log-bin=/var/lib/MySQL/mysql-bin.log,如果是这样的话log-bin

MYSQL备份:启用二进制日志功能的MYSQL增量备份

小量的数据库我们可以每天进行完整备份,因为这也用不了多少时间,但当数据库很大时,我们就不太可能每天进行一次完整备份了,而且改成每周一次完整备份,每天一次增量备份类似这样的备份策略.增量备份的原理就是使用了mysql的二进制日志,所以我们必须启用二进制日志功能. 一.增量备份 1.比如我们在星期天下午11点做一次完整备份: mysqldump --single-transaction --flush-logs --master-data=2 --all-databases > fullbackup