mysql实现增量备份

php中文网
发布: 2016-06-07 16:38:31
原创
1182人浏览过

有点要注意 如果你误删了表 想通过这个恢复 必须恢复日志里面有创建表的日志 不然的话是无法回复的 ?就是必须是从你开始创建表的时候就已经记录日志了? 恢复到哪个位置 就按照哪个位置来计算 mysql ?5.0不支持增量备份 增量备份定义 ? ? mysql数据库会以二进



有点要注意 如果你误删了表 想通过这个恢复 必须恢复日志里面有创建表的日志 不然的话是无法回复的 ?就是必须是从你开始创建表的时候就已经记录日志了?


恢复到哪个位置 就按照哪个位置来计算


mysql ?5.0不支持增量备份


增量备份定义


? ? mysql数据库会以二进制形式 自动把用户对mysql数据库的操作 记录到文件 当用户希望恢复的时候可以使用备份文件 进行回复


? ? 增量备份会记录 (dml 语句 建表语句 不会记录select语句)

? ? 记录的 (a 操作语句本身 b 操作的时间 ?c 操作的位置 position)


实例

? ? 配置 my.ini文件 或者 my.conf 启用二进制备份

???log-bin=e:/mysqldb/logbin.log ? ?先设置mysql日志存放位置


? ? 配置好后 再启动模样上去了 就会在备份目录多了2个文件?

? ? logbin.index ?这个是索引文件 有哪些增量备份

????logbin.000001 ? 存放用户对数据库操作的文件


? ? 如果你想看看 这个 里面是什么东西 我们可以使用 mysql的bin目录下面的一个工具查看?

? ? 就是 mysqlbinlog.exe ?这个东西看?

????

? ? 首先用cmd进入 mysql的 bin目录下面 然后执行

? ? mysqlbinlog e:/mysqldb/logbin.000001

????

mysql 对于你的每一次操作 都会记录一次时间 同时 给你分配一个位置 (pos)

换句话说 以后我们恢复 可以根据时间点来恢复 或者根据位置来恢复


比如说 我们把一个表个drop 了 那么我们只要把表恢复到 drop之前就好了?


时间点恢复

? ? 我们可以画个流程图

? ? logbin.000001

? ? insert ...... ? 3 ? ? ? 2013-07-23 17:57:00

? ? update ..... ? 4 ? ?2013-07-23 17:59:00

?????insert ...... ? 100 ? ? ? 2013-07-23 19:57:00

? ? drop ?... ? ? ? ?101 ? ?2013-07-23 20:57:00

????

? ? 恢复的话可以这么写

? ? mysqlbinlog ?--stop-datatime="2013-07-23 20:50:00"?e:/mysqldb/logbin.000001

? ? 上面这句的意思是 一直恢复到?2013-07-23 20:50:00 ?停止

Modoer多功能点评系统2.5 精华版 Build 20110710 GBK
Modoer多功能点评系统2.5 精华版 Build 20110710 GBK

Modoer 是一款以本地分享,多功能的点评网站管理系统。采用 PHP+MYSQL 开发设计,开放全部源代码。因具有非凡的访问速度和卓越的负载能力而深受国内外朋友的喜爱,不局限于商铺类点评,真正实现了多类型的点评,可以让您的网站点评任何事与物,同时增加产品模块,也更好的网站产品在网站上展示。Modoer点评系统 2.5 Build 20110710更新列表1.同步 旗舰版系统框架2.增加 限制图片

Modoer多功能点评系统2.5 精华版 Build 20110710 GBK 0
查看详情 Modoer多功能点评系统2.5 精华版 Build 20110710 GBK

?????mysqlbinlog ?--start-datatime="2013-07-23 20:50:00"?e:/mysqldb/logbin.000001

? ? 上面这句的意思是 从2013-07-23 20:50:00 ?开始恢复


按照位置来恢复

??????? mysqlbinlog ?--stop-position="100"?e:/mysqldb/logbin.000001? |?

????? ? 上面这个语句意思是 恢复到100的位置


真实性恢复

按照位置恢复

mysqlbinlog ?--stop-position=4590?e:/mysqldb/logbin.000001? | mysql -uroot -p

按照时间恢复

mysqlbinlog ?--stop-datetime="2013-07-24 18:17:19"?e:/mysqldb/logbin.000001? | mysql -uroot -p



可以控制从什么时候开始 到什么是结束

mysqlbinlog?--start -position=4? --stop-position=106 yueliangd
ao_binglog.000001 > c:\test1.txt




在工作中 可以每周一做一个全备份 就是 mysqldump ?

然后 启用我们的增量备份 把过期时间设为 大于等于7天

如果数据库崩溃了 就可以通过时间和位置来恢复









如何关闭 mysql 自动记录日志

找到log-bin=mysql-bin,前面添加#即可。

个别版本需要关闭

binlog_format=mixed前面添加#,否则会出现mysql无法启动。

















作者:ebw123 发表于2013-7-24 22:27:12 原文链接

阅读:109 评论:0 查看评论

mysql实现增量备份

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号