通过innobackupex实现对MySQL的增量备份与还原
备份
增量备份是基于完整备份的,所以我们需要先做一次完整备份:
innobackupex --password=test /backup/
备注:test是我的MySQL服务的root用户的密码,/backup/是我用于存放备份文件的目录。
执行完命令后,/backup/目录下会生成一个时间戳目录,在我这个例子中是/backup/2016-09-20_14-45-26/。
第一次增量备份:
innobackupex --password=test --incremental /backup/ --incremental-basedir=/backup/2016-09-20_14-45-26/
注意:第一次备份的--incremental-basedir参数应指向完整备份的时间戳目录。
执行完命令后,/backup/目录下会生成一个时间戳目录,在我这个例子中是/backup/2016-09-20_14-58-01/。
第二次增量备份:
innobackupex --password=test --incremental /backup/ --incremental-basedir=/backup/2016-09-20_14-58-01/
注意:第二次备份的--incremental-basedir参数应指向第一次增量备份的时间戳目录。
执行完命令后,/backup/目录下会生成一个时间戳目录,在我这个例子中是/backup/2016-09-20_14-58-30/。
为了达到实验效果,建议读者在每次增量备份前对数据库进行增删改,以便观察还原效果。
还原
停止MySQL服务并清空数据目录:
service mysqld stop
rm -rf /mysql/*
整合完整备份和增量备份:
innobackupex --apply-log --redo-only /backup/2016-09-20_14-45-26/
innobackupex --apply-log --redo-only /backup/2016-09-20_14-45-26/ --incremental-dir=/backup/2016-09-20_14-58-01/
innobackupex --apply-log /backup/2016-09-20_14-45-26/ --incremental-dir=/backup/2016-09-20_14-58-30/
innobackupex --apply-log /backup/2016-09-20_14-45-26/
注意:一定要按照完整备份、第一次增量备份、第二次增量备份的顺序进行整合,在整合最后一次增量备份时不要使用--redo-only参数。
开始还原:
innobackupex --copy-back /backup/2016-09-20_14-45-26/
还原成功后你会看到“completed OK!”的字样。
修改数据目录的属主和属组并启动MySQL服务:
chown -R mysql.mysql /mysql/
service mysqld start
通过以上步骤就完成了增量备份的还原。
温馨提示
在还原时,如果有足够的空间,建议对数据目录和备份目录进行拷贝备份。
通过innobackupex实现对MySQL的增量备份与还原的更多相关文章
- innobackupex实现对MySQL的增量备份与还原
备份增量备份是基于完整备份的,所以我们需要先做一次完整备份: innobackupex --defaults-file=/etc/my.cnf --user root --password cheng ...
- 通过innobackupex实现对MySQL的完整备份与还原
备份 新建一个用于存放备份的目录 mkdir /backup 执行以下命令: innobackupex --password=test /backup/ 执行完后你会看到“completed OK!” ...
- 利用shell脚本实现对mysql数据库的备份
#!/bin/bash #保存备份个数 number=3 #备份保存路径 backup_dir=/root/mysqlbackup #日期 dd=`date +%Y%m%d` #备份工具 tool=m ...
- 实现对MySQL数据库进行分库/分表备份(shell脚本)
工作中,往往数据库备份是件非常重要的事情,毕竟数据就是金钱,就是生命!废话不多,下面介绍一下:如何实现对MySQL数据库进行分库备份(shell脚本) Mysq数据库dump备份/还原语法: mysq ...
- Mysql性能优化三(分表、增量备份、还原)
接上篇Mysql性能优化二 对表进行水平划分 如果一个表的记录数太多了,比如上千万条,而且需要经常检索,那么我们就有必要化整为零了.如果我拆成100个表,那么每个表只有10万条记录.当然这需要数据在逻 ...
- Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问
本篇内容还是建立在上一篇Java Web学习系列——Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Jar包 这 ...
- mysql 利用binlog增量备份,还原实例
mysql 利用binlog增量备份,还原实例 张映 发表于 2010-09-29 分类目录: mysql 标签:binlog, mysql, mysqldump, 增量备份 一,什么是增量备份 增量 ...
- MYSQL数据库增量备份
MySQL数据库增量备份,在这之前修改我们的数据库配置文件/etc/my.cnf开启bin-log日志功能即可.接下来是我参考了下网上的一些方法,自己写的,主要还是要能学到他的一些思路和方法. #fu ...
- Xtrabackup 全备和还原以及增量备份和还原
目录 MySQL环境介绍 全备和还原 准备备份目录 创建测试数据 全量备份 模拟删除数据 还原数据操作 第一步 备份备份文件 第二步 关闭数据库 第三步 移除数据库的data目录 第四步 恢复前准备 ...
随机推荐
- os and shutil
# os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为 '\\'os.name 字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix ...
- FileSystem.DeleteDirectory遇到"无法删除 文件:无法读取源文件或磁盘"
Microsoft.VisualBasic.FileIO.FileSystem.DeleteDirectory(fileFolder, UIOption.AllDialogs, RecycleOpti ...
- 认识UML类图元素
在Visio里,包和类的关系是包含关系,将类拖入包的文件夹之后,关系就建立了,二元关联符号可以设置为:聚合.合成.接口:空心圆+直线(唐老鸭类实现了‘讲人话’):依赖:虚线+箭头(动物和空气的关系): ...
- spring mvc中使用freemark的一点心得
参考文档: FreeMarker标签与使用 连接http://blog.csdn.net/nengyu/article/details/6829244 freemarker学习笔记--指令参考: ht ...
- (.text+0x12): undefined reference to `rpl_fprintf'
问题1:(.text+0x12): undefined reference to `rpl_fprintf'解决办法:在yacc前面添加%{#undef yyerrorvoid yyerror (ch ...
- 使用JavaScript的Join方法
在本例中,我们将创建一个数组,然后把它的所有元素放入一个字符串: <script type="text/javascript"> var arr = new Array ...
- 百度地图API功能集锦
1.点个数太多导致加载缓慢的解决. 2.可视化区域内加载的解决. 3.自定义信息窗口解决. 4.区域/板块/商圈等的绘制功能解决. 基本包含了用到百度地图API会使用到的大部分常规性场景.(聚合点功能 ...
- JS获取上个月(转)
1.yyyy-mm-dd获取上个月 function getUpMonth(t){ var tarr = t.split('-'); var year = tarr[0]; //获取当前日期的年 va ...
- Blink Without Delay: 不使用 delay() 函数而使 LED 闪烁
不使用 delay() 函数而使 LED 闪烁 有些时候你需要同时做两件事.例如,你可能希望在读取按键按下状态同时让LED闪烁. 在这种情况下,你不能使用 delay(),因为Arduino程序会在d ...
- Convert Excel data to MDB file
所需组件: microsoft ado ext. 2.8 for ddl and security 或者更新的组件. 添加: using ADOX;using System.Runtime.Inter ...