zoukankan      html  css  js  c++  java
  • 7.5.2 Point-in-Time Recovery Using Event Positions

    7.5.2 Point-in-Time Recovery Using Event Positions 使用Event Positions来基于时间的恢复

    代替特定的日期和时间,mysqlbinlog 的–start-position and –stop-position 选

    能被用于特定的log positions.它们工作和start和stop date选项类似,

    除了制定log position 号而不是日期。 使用positions 可以让你更精确的关于日志部分的恢复,

    尤其是如果很多的事务发生在相同的时间 比如破坏性得到SQL语句,

    确定 position numbers, 在一段时间范围内(不需要的事务被执行)运行mysqlbinlog,

    重定向结果到一个文本文件,可以这么做:

    shell> mysqlbinlog –start-datetime=”2005-04-20 9:55:00”
    –stop-datetime=”2005-04-20 10:05:00”
    /var/log/mysql/bin.123456 > /tmp/mysql_restore.sql

    这个命令创建一个小的文本文件 在/tmp目录下, 包含了SQL语句,在有害的SQL语句执行的范围附近。

    用文本文件打开,寻找你不想要重复的语句。切丁binary log 中的positiosn 用于stopping

    然后继续恢复和记录它们 的Posistions,恢复先前的备份后:
    shell> mysqlbinlog –stop-position=368312 /var/log/mysql/bin.123456
    | mysql -u root -p

    shell> mysqlbinlog –start-position=368315 /var/log/mysql/bin.123456
    | mysql -u root -p

    第一个命令恢复所有的事务到指定的stop position,第2条命令恢复所有的事务从给定的 starting position

    到binary log的结尾。因为 mysqlbinlog 的输出 包含了SET TIMESTAMP 语句在每个记录的SQL语句前,

    恢复的数据和相关的MySQL logs会影响原始的时间,之前事务执行的时间。

    SET TIMESTAMP=1438179219/!/;
    UPDATE QRTZ_SCHEDULER_STATE SET LAST_CHECKIN_TIME = 1438179219567 WHERE SCHED_NAME =

    ‘ReportControlScheduler’ AND INSTANCE_NAME = ‘auto’

  • 相关阅读:
    WebService又一个不爽的地方
    [biztalk笔记]1.Hello World!
    Flex4中使用HDividedBox,VDividedBox
    Flex:地图缩放平移效果(简易版)
    asp.net webform中submit按钮使用不当很容易犯的一个错误
    Silverlight Telerik控件学习:带CheckBox复选框的树形TreeView控件
    oracle odp.net 32位/64位版本的问题
    asmx迷10分钟升级成wcf熟手指南
    如何克制求知欲或好奇心
    随手小记:快速适应未必是个好策略
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351503.html
Copyright © 2011-2022 走看看