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

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

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  停止
     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无法启动。
















mysql实现增量备份的更多相关文章

  1. MYSQL数据库增量备份

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

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

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

  3. mysql 二进制文件增量备份

    1.首先在my.cnf下添加二进制文件路径(windows下文件名称为my.ini) 在[mysqld]下添加 log-bin=mysql-bin 2.centos下默认安装mysql 5.6,数据默 ...

  4. Python 生产环境MySQL数据库增量备份脚本

    MySQL数据库常用的办法是通过MySQLdump导出sql进行备份,但是不适合数据量很大的数据库,速度,锁表是两个严重的问题.前面写了一遍文章介绍xtrabackup的热备工具,见 http://w ...

  5. mysql xtrabackup增量备份

    mysql 增量备份策略 周一全备,其他增量备份,根据业务需要,设定保留日期,如保留一月. 增量备份步骤; 1 创建全备 2 根据全备目录,创建增量备份 3 第二次增量备份根据第一次增量备份目录,依次 ...

  6. mysql实时增量备份

    采用binlog日志的好处 掌控所有更改操作,必要时可用于恢复数据 数据库主从复制的必要条件 [root@localhost~]# vim /etc/my.cnf [mysqld] .. .. log ...

  7. mysql的增量备份与全备的脚本

    mysql全量备份.增量备份.开启mysql的logbin日志功能.在/etc/my.cnf文件中加入以下代码: [mysqld]log-bin = "/home/mysql/logbin. ...

  8. innobackupex实现对MySQL的增量备份与还原

    备份增量备份是基于完整备份的,所以我们需要先做一次完整备份: innobackupex --defaults-file=/etc/my.cnf --user root --password cheng ...

  9. Centos 6.5 实战-MySQL定时增量备份(2)

    首先在进行增量备份之前需要查看一下配置文件,查看 log_bin 是否开启,因为要做增量备份首先要开启 log_bin .首先,进入到 myslq 命令行,输入如下命令: [root@localhos ...

随机推荐

  1. Win7主题被禁用

    今天早上干了一件傻缺的事,打开电脑的时候,某卫士提醒开机速度击败全国0.2%的电脑,之后点了优化...随后就发生了接下来的一幕: win7下面的主题都不能使用了,只能使用那种复古(很丑的样式,看着很不 ...

  2. ImportError: No module named matlab

    这个matlab已经改名为pylab了,你可以运行: from pylab import *

  3. express+jade+bootstrap+mongdb simple CRUD test

    1:当前环境 y@y:~$ node --version && express -V && mongo --version v0.12.2 MongoDB shell ...

  4. cf C. Divisible by Seven

    http://codeforces.com/contest/376/problem/C 题意:给你一个大数最多含有10^6个数字,这里面必须含有1,6,8,9,然后重新排列找出一个能被6整除的数. 思 ...

  5. 汇顶指纹传感器GF919深度解析

    前言: 随着指纹识别技术的日益普遍,其在手机上的应用也得到了广泛关注.作为全球第一款Android正面按压指纹识别手机,魅族MX4 Pro所搭载的国产指纹识别系统可谓是赚足了眼球,这就是由汇顶科技提供 ...

  6. 研究了下apache的漏洞CVE-2012-0053

    发一个大cookie过去,最新版本的,竟然显示了个\n 嘛意思 干嘛不直接删掉 Your browser sent a request that this server could not under ...

  7. jquery $.each() 小探

    <html> <head> <title> jquery each使用 </title> <script type='text/javascrip ...

  8. 【HDOJ】3400 Line belt

    三分. #include <cstdio> #include <cstring> #include <cmath> typedef struct { double ...

  9. 【模拟】Codeforces 706A Beru-taxi

    题目链接: http://codeforces.com/problemset/problem/706/A 题目大意: 家的坐标在sx,sy,有n辆车,每辆车坐标xi,yi,速度vi,问最快的一辆车什么 ...

  10. cf590A Median Smoothing

    A. Median Smoothing time limit per test 2 seconds memory limit per test 256 megabytes input standard ...