innobackupex实现对MySQL的增量备份与还原
备份
增量备份是基于完整备份的,所以我们需要先做一次完整备份:
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
相关文章
- linux中备份mysql数据库的一个shell脚本
- MariaDB 服务器在 MySQL Workbench 备份数据的时候出错如何解决
- MySQL数据库备份
- MySQL 2003报错解决方案
- 浅析MySQL二进制日志
- MySQL(8)--Cluster 7.4 rpm centos7
- MySQL备份系列(2)-- mysqldump备份(全量+增量)方案操作记录
- MySQL 备份系列(3)-- innobackupex备份mysql大数据(全量+增量)操作记录
- [数据库]MySQL之备份与恢复【未完待续】
- JSP 实现 之 调用java方法实现MySQL数据库备份和恢复
- mysql数据表每天全量备份
- 如何在linux下实现mysql数据库每天自动备份
- 学一点 mysql 双机异地热备份----快速理解mysql主从,主主备份原理及实践
- yum安装mysql-5.6(centos7)-阿里云备份恢复到本地
- mysql DQL语言操作
- MySQL 第五篇:系统函数和联合查询
- 从MySQL全库备份中恢复一个库和一张表
- Mysql系列六:(Mycat分片路由原理、Mycat常用分片规则及对应源码介绍)
- MySQL中表的复制以及大型数据表的备份教程
- C++访问mysql数据库
- 高速备份还原MYSQL数据库
- MySQL的3节点主从同步复制方案
- mysql与oracle常用函数及数据类型对比00持续补充
- mysql多线程备份与还原工具mydumper
- 在linux下实现mysql自动备份数据
- django写网站遇到的时区问题及mysql汉字存储问题
- 一个备份MySQL数据库的简单Shell脚本