mysqlbinlog --start-date="时间1" --stop-date="时间2" binlog.000001 >c:\11.sql
生成这段时间里的一个SQL文件,那么在之后的时间里面,我增加或删除一些记录的话,我想返回到 时间1-时间2 之间的状态不是不行了?
增加的数据还是在,如果删除了一些数据,在 时间1-时间2 之间的数据也没有了只对更新有效(记录存在)??

解决方案 »

  1.   

    binlog是按照时间记录的对数据库更改的记录,包括删除,插入,更新
      

  2.   

    你好
    比如我在8点到9点插入了10条记录,此段时间的日志生成了一个SQL文件
    在9点之后我又插入了2条记录,删除了8点到9点的3条记录。
    我恢复8点到9点的数据的时候,内容没有变化
      

  3.   

    你需要找到 "时间2" 之前的最新的一次全备份 "时间X" ,然后恢复这个全备份,再mysqlbinlog --start-date="时间X" --stop-date="时间2" binlog.000001 >c:\11.sql
    再复制到MYSQL中去执行。
      

  4.   

    恩,就是说先 mysqldump 全备份,需要恢复到时候,首先恢复全备份,再 mysqlbinlog 吗? 如果是我这么理解的话,那个SQL会有几个G吧,很大?
      

  5.   

    另外在恢复数据的时候,如果恢复一个月的数据,那执行日志导出的SQL文件,我觉得都需要几个小时?
      

  6.   

    再顺便请教一个问题
    在恢复数据的过程中,需要关闭MYSQL吗?就是说网站的正常运行
    因为一边是网站在读取数据,另外一边是在还原数据///