备份

    1.全备
innobackupex --user=root --password=123456 --no-timestamp /backup/full
增加数据
mysql> insert into oldboy.test values(2,'b');
Query OK, 1 row affected (0.00 sec) mysql> select * from oldboy.test;
+------+------+
| id | name |
+------+------+
| 1 | a |
| 2 | b |
+------+------+
2.第一次增备
innobackupex --user=root --password=123456 --incremental --no-timestamp --incremental-basedir=/backup/full/ /backup/inc1
增加数据
mysql> insert into oldboy.test values(3,'c');
Query OK, 1 row affected (0.01 sec) mysql> select * from oldboy.test;
+------+------+
| id | name |
+------+------+
| 1 | a |
| 2 | b |
| 3 | c |
+------+------+
3. 第二次增备
innobackupex --user=root --password=123456 --incremental --no-timestamp --incremental-basedir=/backup/inc1/ /backup/inc2
增加数据
mysql> insert into oldboy.test values(4,'d');
Query OK, 1 row affected (0.00 sec) mysql> select * from oldboy.test;
+------+------+
| id | name |
+------+------+
| 1 | a |
| 2 | b |
| 3 | c |
| 4 | d |
+------+------+

破坏数据

drop table oldboy.test;

恢复

   ##应用全备
innobackupex --apply-log --redo-only /backup/full/
#第一次增备合并到全备
innobackupex --apply-log --redo-only /backup/full/ --incremental-dir=/backup/inc1/
#第二次增备合并到全备
innobackupex --apply-log --redo-only /backup/full/ --incremental-dir=/backup/inc2/
# 最后应用全备
innobackupex --apply-log /backup/full/
#恢复
innobackupex --copy-back /backup/full/

启动数据库

    /etc/init.d/mysqld start

binlog恢复

  #  查看最后一次增备的binlog文件及位置
cat /backup/inc2/xtrabackup_binlog_info
mysql-bin.000001 554 #其它数据需要binlog恢复,binlog日志片段 # at 554
#171123 5:05:47 server id 1 end_log_pos 631 CRC32 0x682f8893 Query thread_id=7 exec_time=0 error_code=0
SET TIMESTAMP=1511413547/*!*/;
BEGIN
/*!*/;
# at 631
#171123 5:05:47 server id 1 end_log_pos 740 CRC32 0xc13589a3 Query thread_id=7 exec_time=0 error_code=0
SET TIMESTAMP=1511413547/*!*/;
insert into oldboy.test values(4,'d')
/*!*/;
# at 740
#171123 5:05:47 server id 1 end_log_pos 771 CRC32 0x9fe9947a Xid = 62
COMMIT/*!*/;
# at 771
#171123 5:07:01 server id 1 end_log_pos 895 CRC32 0xc7671d4f Query thread_id=7 exec_time=0 error_code=0
SET TIMESTAMP=1511413621/*!*/;
DROP TABLE `oldboy`.`test` /* generated by server */
/*!*/;
# at 895
#171123 5:16:08 server id 1 end_log_pos 918 CRC32 0x7fc7c108 Stop
DELIMITER ;
# End of log file # 导出binlog
mysqlbinlog mysql-bin.000001 --start-position=554 --stop-position=771 > /backup/binlog.sql # 导入binlog
set sql_log_bin=0;
source /backup/binlog.sql #最终数据
mysql> select * from oldboy.test;
+------+------+
| id | name |
+------+------+
| 1 | a |
| 2 | b |
| 3 | c |
| 4 | d |
+------+------+
4 rows in set (0.00 sec)

xtrabackup备份恢复过程的更多相关文章

  1. 从xtrabackup备份恢复单表【转】

    目前对MySQL比较流行的备份方式有两种,一种上是使用自带的mysqldump,另一种是xtrabackup,对于数据时大的环境,普遍使用了xtrabackup+binlog进行全量或者增量备份,那么 ...

  2. 从xtrabackup备份恢复单表

    目前对MySQL比较流行的备份方式有两种,一种上是使用自带的mysqldump,另一种是xtrabackup,对于数据时大的环境,普遍使用了xtrabackup+binlog进行全量或者增量备份,那么 ...

  3. mysql xtrabackup 备份恢复实现,mysql命令备份数据库,打包压缩数据库

    简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具.特点: (1)备份过程快速.可靠 ...

  4. xtrabackup 备份恢复

    XtraBackup物理备份 Percona XtraBackup是世界上唯一的开源,免费的MySQL热备份软件,为InnoDB和XtraDB 数据库执行非阻塞备份.使用Percona XtraBac ...

  5. Linux下数据库备份恢复过程

    1. 远程进入Linux服务器. 2. 一般登录的是root用户, 第一步切换到Oracle用户, 命令: su - oracle 3. 查看服务器上面数据库的监听的状况 lsnrctl 之后输入命令 ...

  6. xtrabackup备份恢复测试

    http://blog.chinaunix.net/uid-20682026-id-3319204.html

  7. mysql全备和增量备份以及恢复过程(percona工具)

    实验环境 系统环境,内核版本和xtrabackup工具版本 [root@linux-node1 mysql]# cat /etc/redhat-release CentOS Linux release ...

  8. xtrabackup原理,整库,单表,部分备份恢复

    物理备份xtrabackup原理 Percona XtraBackup(简称PXB)是 Percona 公司开发的一个用于 MySQL 数据库物理热备的备份工具,支持 MySQl(Oracle).Pe ...

  9. xtrabackup备份原理及流式备份应用

    目录 xtrabackup备份原理及流式备份应用 0. 参考文献 1. xtrabackup 安装 2. xtrabackup 备份和恢复原理 2.1 备份阶段(backup) 2.2 准备阶段(pr ...

随机推荐

  1. centos虚拟机存储扩容

    在vSphere Web Client上面创建的虚拟机,用了一段时间后存储无法满足需求,需要将原来的存储300G扩容到500G 点此编辑即可修改磁盘2的储存大小,但是修改此配置后,虚拟机centos是 ...

  2. ceph报错

    [ceph_deploy.mon][ERROR ] RuntimeError: config file /etc/ceph/ceph.conf exists with different conten ...

  3. java数据机构之自定义栈

    一.栈的特点 1.线性数据结构 2.后进先出 二.使用数组来实现栈 //使用数组来实现栈 public class MyArrayStack<E> { //保存数据 private Obj ...

  4. 2019 Unreal Open Day —— 英特尔携手 UE 助力游戏开发生态建设

    2019 年 5 月 8 日-5 月 9 日,一年一度的 Unreal Open Day 虚幻引擎技术开放日在上海举办,该活动由 Epic Games 中国倾力打造,是面向虚幻引擎开发者规格最高.规模 ...

  5. web - code/flash

    trace 来源: 1. http://traces.cs.umass.edu/index.php/Storage/Storage 源代码: 1.sourceforge 2.github.github ...

  6. PHP抽奖代码。亲测可用

    $prize_arr = array( '0' => array('id' => 1, 'title' => 'iphone5s', 'v' => 5), '1' => ...

  7. ACM-ICPC 2017 Asia Urumqi A. Coins【期望dp】

    题目链接:https://www.jisuanke.com/contest/2870?view=challenges 题目大意:给出n个都正面朝下的硬币,操作m次,每次都选取k枚硬币抛到空中,求操作m ...

  8. 计蒜客习题:蒜头君的积木 (状压DP 枚举子集)

    问题描述 蒜头君酷爱搭积木,他用积木搭了 n 辆重量为 wi的小车和一艘最大载重量为 W 的小船,他想用这艘小船将 n 辆小车运输过河.每次小船运载的小车重量不能超过 W.另外,小船在运载小车时,每辆 ...

  9. hdoj5909 Tree Cutting(点分治+树上dp转序列dp)

    题目链接:https://vjudge.net/problem/HDU-5909 题意:给一颗树,结点带权值v[i]<m.求异或和为k的子树个数(0<=k<m). 思路: 首先点分治 ...

  10. Django模块

    django.contrib.humanize 一系列Django的模板过滤器,有助于向数据添加“人文关怀”. 把'django.contrib.humanize'添加到INSTALLED_APPS设 ...