MySQL备份利器之Xtrabackup--备份
2013-08-21 17:04
330 查看
备份
一:全备
$ innobackupex --defaults-file=/tmp/other-my.cnf --user=DBUSER
--password=DBUSERPASS /path/to/BACKUP-DIR/
二:增量备份
2.1增量备份理论基础
之所以能够进行增量备份,是因为每一个InnoDB 页(page)都包含了一个日志序列
号,或者LSN。这个LSN 是一个整个数据库的系统版本号。每一个页的LSN 展示了它是怎么
改变的。一个增量备份复制了每一个页,这些页的LSN 都是比之前的增量或者全备LSN号要
新。增量备份实际上不是比较现在的数据文件和之前的备份数据文件。实际上,如果你知
道它的、LSN你可以用-incremental-lsn 去这个参数去执行一个增量备份,即使之前没有
做过备份。
增量备份简单的读取页,和对比上一次备份的LSN 与它们的LSN 号。你仍然需要一个
全备去恢复一个增量的改变,但是,若没有一个全备作为一个基准,那些增量备份也会变
得无效。
在进行增量备份之前,必须要有一个全备。这个全备将作为增量备份的一个基准。
1)全备:
innobackupex /全备目录
这样的全备,会在全备目录下生成一个带有时间标记的目录,该目录即是备份的数据,你也可以通过innobackupex -no-timestamp 来自己制定生成的文件的名字
2)第一次增备:
Innobackupex --incremental /增备存放目录--incremental-basedir=/全备目录这样就有了一个增量备份了,如果此时还想要在进行一次增量备份。那么类似的话,也需要一个基准,那么现在的基准就变成了刚刚完成的增量备份了。
3)第二次增备:
innobackupex --incremental /第二次增备的存放目录--incremental-basedir=/第一次增备的存放目录
同时,你会发现在我们每一个备份中 ,不管是全备,还是增备,在它们的目录中都有这么一
个文件:xtrabackup-checkpoints 。
这个文件中有类似的记录:
这些就是备份开始的位置和结束的位置。所以我们也可以通过这些位置点来备份:
这种备份方式更加值得提倡。
2.2增量备份实际案例
1)全备:
[root@localhost home]#innobackupex -user=root --password=123456
--defaults-file=/usr/local/mysql/data/3306/my.cnf /home/mysqlbackup
2)增备:
[root@localhost mysqlbackup]# innobackupex --user=root --password=123456
--defaults-file=/usr/local/mysql/data/3306/my.cnf --incremental /home/inc1
--incremental-basedir=/home/mysqlbackup/2013-02-19_12-20-49/
注意: 其中2013-02-19_12-20-49/ 是全备的目录。增量备份新生成的备份目录为
2013-02-20_10-25-19
3)第二次增备:
[root@game7 mysqlbackup]# innobackupex --user=root --password=123456
--defaults-file=/usr/local/mysql/data/3306/my.cnf --incremental /home/inc2
--incremental-basedir=/home/inc1/2013-02-20_10-25-19/
注意:第二次增备生成的目录是/home/inc2/2013-02-20_10-35-48
----------------------------------------------------------------------------------------------------------------------
全备(基准):/home/mysqlbackup/2013-02-19_12-20-49/
第一次增备:/home/inc1/2013-02-20_10-25-19/
第二次增备:/home/inc2/2013-02-20_10-35-48
----------------------------------------------------------------------------------------------------------------------
一:全备
$ innobackupex --defaults-file=/tmp/other-my.cnf --user=DBUSER
--password=DBUSERPASS /path/to/BACKUP-DIR/
二:增量备份
2.1增量备份理论基础
之所以能够进行增量备份,是因为每一个InnoDB 页(page)都包含了一个日志序列
号,或者LSN。这个LSN 是一个整个数据库的系统版本号。每一个页的LSN 展示了它是怎么
改变的。一个增量备份复制了每一个页,这些页的LSN 都是比之前的增量或者全备LSN号要
新。增量备份实际上不是比较现在的数据文件和之前的备份数据文件。实际上,如果你知
道它的、LSN你可以用-incremental-lsn 去这个参数去执行一个增量备份,即使之前没有
做过备份。
增量备份简单的读取页,和对比上一次备份的LSN 与它们的LSN 号。你仍然需要一个
全备去恢复一个增量的改变,但是,若没有一个全备作为一个基准,那些增量备份也会变
得无效。
在进行增量备份之前,必须要有一个全备。这个全备将作为增量备份的一个基准。
1)全备:
innobackupex /全备目录
这样的全备,会在全备目录下生成一个带有时间标记的目录,该目录即是备份的数据,你也可以通过innobackupex -no-timestamp 来自己制定生成的文件的名字
2)第一次增备:
Innobackupex --incremental /增备存放目录--incremental-basedir=/全备目录这样就有了一个增量备份了,如果此时还想要在进行一次增量备份。那么类似的话,也需要一个基准,那么现在的基准就变成了刚刚完成的增量备份了。
3)第二次增备:
innobackupex --incremental /第二次增备的存放目录--incremental-basedir=/第一次增备的存放目录
同时,你会发现在我们每一个备份中 ,不管是全备,还是增备,在它们的目录中都有这么一
个文件:xtrabackup-checkpoints 。
这个文件中有类似的记录:
这些就是备份开始的位置和结束的位置。所以我们也可以通过这些位置点来备份:
这种备份方式更加值得提倡。
2.2增量备份实际案例
1)全备:
[root@localhost home]#innobackupex -user=root --password=123456
--defaults-file=/usr/local/mysql/data/3306/my.cnf /home/mysqlbackup
2)增备:
[root@localhost mysqlbackup]# innobackupex --user=root --password=123456
--defaults-file=/usr/local/mysql/data/3306/my.cnf --incremental /home/inc1
--incremental-basedir=/home/mysqlbackup/2013-02-19_12-20-49/
注意: 其中2013-02-19_12-20-49/ 是全备的目录。增量备份新生成的备份目录为
2013-02-20_10-25-19
3)第二次增备:
[root@game7 mysqlbackup]# innobackupex --user=root --password=123456
--defaults-file=/usr/local/mysql/data/3306/my.cnf --incremental /home/inc2
--incremental-basedir=/home/inc1/2013-02-20_10-25-19/
注意:第二次增备生成的目录是/home/inc2/2013-02-20_10-35-48
----------------------------------------------------------------------------------------------------------------------
全备(基准):/home/mysqlbackup/2013-02-19_12-20-49/
第一次增备:/home/inc1/2013-02-20_10-25-19/
第二次增备:/home/inc2/2013-02-20_10-35-48
----------------------------------------------------------------------------------------------------------------------
相关文章推荐
- MySQL备份利器-xtrabackup的介绍和原理(附脑图)
- MySQL备份利器之Xtrabackup--恢复
- MySQL备份利器之Xtrabackup--生产应用
- MySQL备份与恢复之percona-xtrabackup软件的使用
- MySQL 备份软件 Xtrabackup 的 xtrabackup_binlog_pos_innodb和xtrabackup_binlog_info 文件区别
- 用xtrabackup2.4备份mysql5.6.30一直显示log scanned up to
- mysql备份还原-xtrabackup2.2.3工具innobackupex脚本用法详解
- MySQL中使用innobackupex、xtrabackup进行大数据的备份和还原教程
- 实战:XtraBackup for mysql 5.6备份脚本
- Xtrabackup物理备份Mysql(Innodb引擎)-全备份和增量备份
- MySQL_Xtrabackup数据备份与恢复
- 关于通过linux crontab+xtrabackup自动化备份mysql数据的说明
- mysql之 xtrabackup原理、备份日志分析、备份信息获取
- 备份一个约250G的mysql实例【xtrabackup备份方案对比】
- Xtrabackup热备份mysql工具使用
- xtrabackup对MySQL进行备份和恢复的全过程
- mysql备份工具innobackupex,xtrabackup-2.1安装与测试
- mysql之 xtrabackup原理、备份日志分析、备份信息获取
- Xtrabackup2.4.8备份、还原、恢复Mysql5.7.19实操
- xtrabackup备份MySQL并主从同步