备份

    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. java代码实现简体繁体转换

    汉字分为简体和繁体字,这是众所周知的,虽然繁体字中国大陆这边用的并不会太多,但时不时的还是会使用到.那么,如何做到简体字和繁体字的转换呢?其实很简单,这里附上一个java版本的简繁体转换,用网上找的接 ...

  2. Masonry创建Label,不设置高度Label不显示问题

    [self.contentLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(weanSelf).off ...

  3. 数位dp作业

    dp东西实在太多,昨天开了个树形dp入门,还没入呢,今天就要写数位dp,也不知道这种学习状态对不对啊? A - 不要62 题意: 输入n到m内,符合条件的数的个数.条件:不含62和4. 这里直接学习q ...

  4. docker search 报错

    docker 出现 Error response from daemon vim /etc/containers/registries.conf [registries.search]registri ...

  5. HADOOP依赖

    <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...

  6. 安装多个版本的TensorFlow

    TensorFlow 2.0测试版在今年春季发布,新版本比1.x版本在易用性上有了很大的提升.但是由于2.0发布还没有多久,现在大部分论文的实现代码都是1.x版本的,所以在学习TensorFlow的过 ...

  7. 【VS开发】【计算机视觉】OpenCV读写xml文件《C++版本》

    OpenCV FileStorage类读写XML/YML文件 在OpenCV程序中,需要保存中间结果的时候常常会使用.xml / .yml文件,opencv2.0之前都是使用C风格的代码,当时读写XM ...

  8. mac编译openJDK8

    买了<深入理解Java虚拟机> 周志明著这本书一直没有看,我们的程序都用JVM在跑,所以学习java必须掌握JVM,才能理解我们对象到底干嘛了.   1.为什么要编译JDK 想要一探JDK ...

  9. Second largest node in the BST

    Find the second largest node in the BST 分析: 如果root有右节点,很明显第二大的node有可能在右子树里.唯一不满足的条件就是右子树只有一个node. 这个 ...

  10. 第十三章 字符串 (四)之Scanner类

    一.Scanner简述 Scanner扫描器类本质上是由正则表达式实现的,可以接受任何能产生数据的数据源对象,默认以空白符进行分词(包括\n等),使用各种next方法进行扫描匹配,获取匹配的数据. 二 ...