备份
增量备份是基于完整备份的,所以我们需要先做一次完整备份:

innobackupex --defaults-file=/etc/my.cnf --user root --password chengce243 /data/mysqlbak

执行完命令后,/data/mysqlbak 目录下会生成目录: 2018-08-06_13-53-57

第一次增量备份:

innobackupex --defaults-file=/etc/my.cnf --user root --password chengce243 --incremental /data/mysqlbak --incremental-basedir=/data/mysqlbak/2018-08-06_13-53-57

注意:第一次备份的--incremental-basedir参数应指向完整备份的时间戳目录。
执行完命令后,/data/mysqlbak 目录下会生成目录:2018-08-06_13-55-42

第二次增量备份:

innobackupex --defaults-file=/etc/my.cnf --user root --password chengce243 --incremental /data/mysqlbak --incremental-basedir=/data/mysqlbak/2018-08-06_13-55-42

注意:第二次备份的--incremental-basedir参数应指向第一次增量备份的时间戳目录。
执行完命令后,/data/mysqlbak 目录下会生成目录: 2018-08-06_13-58-47

还原
停止MySQL服务并清空数据目录:

/etc/init.d/mysqld stop
rm -rf /data/mysql/*

恢复过程:

恢复情况一:
直接恢复完整备份之后的数据。
直接把全备备份文件( 2018-08-06_13-53-57)目录下的文件复制到 /data/mysql ,然后启动数据库,此时数据库的数据是完整备份之后的数据。

恢复情况二:
恢复完整备份+增量备份

innobackupex --apply-log --redo-only /data/mysqlbak/2018-08-06_13-53-57
innobackupex --apply-log --redo-only /data/mysqlbak/2018-08-06_13-53-57 --incremental-dir=/data/mysqlbak/2018-08-06_13-55-42
innobackupex --apply-log /data/mysqlbak/2018-08-06_13-53-57 --incremental-dir=/data/mysqlbak/2018-08-06_13-58-47
innobackupex --apply-log /data/mysqlbak/2018-08-06_13-53-57

注意:一定要按照完整备份、第一次增量备份、第二次增量备份的顺序进行整合,在整合最后一次增量备份时不要使用--redo-only参数。

开始还原:
由于我的mysql数据目录为 /data/mysql ,所以还原直接 mv 数据文件到 /data/mysql 即可。

mv /data/mysqlbak/2018-08-06_11-36-02/* /data/mysql/

修改数据目录的属主和属组并启动MySQL服务:

chown -R mysql.mysql /data/mysql/
/etc/init.d/mysqld start

innobackupex实现对MySQL的增量备份与还原的更多相关文章

  1. 通过innobackupex实现对MySQL的增量备份与还原

    备份 增量备份是基于完整备份的,所以我们需要先做一次完整备份: innobackupex --password=test /backup/ 备注:test是我的MySQL服务的root用户的密码,/b ...

  2. 通过innobackupex实现对MySQL的完整备份与还原

    备份 新建一个用于存放备份的目录 mkdir /backup 执行以下命令: innobackupex --password=test /backup/ 执行完后你会看到“completed OK!” ...

  3. 利用shell脚本实现对mysql数据库的备份

    #!/bin/bash #保存备份个数 number=3 #备份保存路径 backup_dir=/root/mysqlbackup #日期 dd=`date +%Y%m%d` #备份工具 tool=m ...

  4. 实现对MySQL数据库进行分库/分表备份(shell脚本)

    工作中,往往数据库备份是件非常重要的事情,毕竟数据就是金钱,就是生命!废话不多,下面介绍一下:如何实现对MySQL数据库进行分库备份(shell脚本) Mysq数据库dump备份/还原语法: mysq ...

  5. Mysql性能优化三(分表、增量备份、还原)

    接上篇Mysql性能优化二 对表进行水平划分 如果一个表的记录数太多了,比如上千万条,而且需要经常检索,那么我们就有必要化整为零了.如果我拆成100个表,那么每个表只有10万条记录.当然这需要数据在逻 ...

  6. Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问

    本篇内容还是建立在上一篇Java Web学习系列——Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Jar包 这 ...

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

    mysql 利用binlog增量备份,还原实例 张映 发表于 2010-09-29 分类目录: mysql 标签:binlog, mysql, mysqldump, 增量备份 一,什么是增量备份 增量 ...

  8. MYSQL数据库增量备份

    MySQL数据库增量备份,在这之前修改我们的数据库配置文件/etc/my.cnf开启bin-log日志功能即可.接下来是我参考了下网上的一些方法,自己写的,主要还是要能学到他的一些思路和方法. #fu ...

  9. Xtrabackup 全备和还原以及增量备份和还原

    目录 MySQL环境介绍 全备和还原 准备备份目录 创建测试数据 全量备份 模拟删除数据 还原数据操作 第一步 备份备份文件 第二步 关闭数据库 第三步 移除数据库的data目录 第四步 恢复前准备 ...

随机推荐

  1. 水库(树形dp)

    水库 (树形dp) R国有n座城市和n-1条长度为1的双向道路,每条双向道路连接两座城市,城市之间均相互连通.现在你需要维护R国的供水系统.你可以在一些城市修建水库,在第i个城市修建水库需要每年c_i ...

  2. 洛谷P2580(trie)

    第一行一个整数 n,表示班上人数.接下来 n 行,每行一个字符串表示其名字(互不相同,且只含小写字母,长度不超过 50).第 n+2 行一个整数 m,表示教练报的名字.接下来 m 行,每行一个字符串表 ...

  3. Cogs 1435. [USACO NOV]金发姑娘和N头牛

    1435. [USACO NOV]金发姑娘和N头牛 ★★☆   输入文件:milktemp.in   输出文件:milktemp.out   简单对比时间限制:1 s   内存限制:256 MB [题 ...

  4. CPU死锁

    https://blog.csdn.net/sunny05296/article/details/82858071 最近碰到了Centos7.2上终端打印soft lockup CPU死锁,系统无响应 ...

  5. Java中的生产者和消费者实例(多线程 等待唤醒机制)

    1.什么是等待唤醒 我们实现的效果 创建生产者和消费者  对服装进行生产  和售卖 实现生产一个就消费一个 来观察线程的各种状态 下面是用到的方法: wait()方法:让一个线程进行等待 另外一个线程 ...

  6. AnkhSVN使用手册

    (一) 安装: Subversion客户端安装------AnkhSVN AnkhSVN是一款在VS中管理Subversion的插件,您可以在VS中轻松的提交.更新.添加文件,而不用在命令行或资源管理 ...

  7. Android Studio、adb

    Android Studio:一个超级全的教程,mark~ https://www.cnblogs.com/laughingQing/p/5848425.html adb命令: https://blo ...

  8. bootstrap栅格系统的实现

    bootstrap提供了一个非常实用的栅格系统,可以实现响应式的网格布局,原理其实很简单,利用了float.百分比的宽度和@media的配合实现响应式,bootstrap默认把一行分为了12列,提供了 ...

  9. 【Java密码学】使用Bouncy Castle生成数字签名、数字信封

    Bouncy Castle(轻量级密码术包)是一种用于 Java 平台的开放源码的轻量级密码术包,它支持大量的密码术算法,并提供 JCE 1.2.1 的实现.最近项目上正好用到了Bouncy Cast ...

  10. phpcms如何调用某一组图里的所有图片

    {pc:get sql="select * from v9_picture_data where id = '$id'"} {loop $data $n $r} {loop str ...