国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 基礎知識 > 正文

從binlog中查出單個表的binlog信息

2024-09-12 20:30:00
字體:
來源:轉載
供稿:網友
  無聊研究binlog寫了個提取單個表的binlog 的信息,便于誤刪恢復數據,這樣做的目的是為了減少恢復時其他表可能引起的出錯,以及縮短恢復時間
  首先研究binlog日志的格式
  如下:
  /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
  /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
  DELIMITER /*!*/;
  # at 4
  #160229 15:19:52 server id 162  end_log_pos 123 CRC32 0xbbe9b551 Start: binlog v 4, server v 5.7.9-log created 160229 15:19:52 at startup
  # Warning: this binlog is either in use or was not closed properly.
  ROLLBACK/*!*/;
  BINLOG '
  GPHTVg+iAAAAdwAAAHsAAAABAAQANS43LjktbG9nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  AAAAAAAAAAAAAAAAAAAY8dNWEzgNAAgAEgAEBAQEEgAAXwAEGggAAAAICAgCAAAACgoKKioAEjQA
  AVG16bs=
  '/*!*/;
  # at 123
  #160229 15:19:52 server id 162  end_log_pos 154 CRC32 0xd473f6f4 Previous-GTIDs
  # [empty]
  # at 154
  #160229 15:18:07 server id 162  end_log_pos 219 CRC32 0xe86bb499 Anonymous_GTID last_committed=0 sequence_number=1
  SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/;
  # at 219
  #160229 15:18:07 server id 162  end_log_pos 291 CRC32 0xe1803afe Query thread_id=102887 exec_time=341 error_code=0
  SET TIMESTAMP=1456730287/*!*/;
  SET @@session.pseudo_thread_id=102887/*!*/;
  SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
  SET @@session.sql_mode=524288/*!*/;
  SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
  /*!/C latin1 *//*!*/;
  SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=33/*!*/;
  SET @@session.lc_time_names=0/*!*/;
  SET @@session.collation_database=DEFAULT/*!*/;
  BEGIN
  /*!*/;
  # at 291
  #160229 15:18:07 server id 162  end_log_pos 343 CRC32 0xcfc435f2 Table_map: `test`.`ty` mapped to number 127
  # at 343
  #160229 15:18:07 server id 162  end_log_pos 463 CRC32 0xb4ef18fe Write_rows: table id 127 flags: STMT_END_F
  BINLOG '
  r/DTVhOiAAAANAAAAFcBAAAAAH8AAAAAAAEABHRlc3QAAnR5AAQDDw8DBBQAFAAP8jXEzw==
  r/DTVh7iAAAAeAAAAM8BAAAAAH8AAAAAAAEAAgAE//AFAAAABEVFRUUCQzFfAAAA8AEAAAAEQUFB
  QQJDMUMAAADwAwAAAARDQ0NDAkMxQwAAAPAEAAAABEREREQCQzFBAAAA8AIAAAAEQkJCQgJDMTcA
  AAD+GO+0
  '/*!*/;
  # at 463
  #160229 15:18:07 server id 162  end_log_pos 494 CRC32 0xed1fb95b Xid = 53
 
 
  COMMIT/*!*/;                                                                                                              -------到第一個commit為第一部分 為binlog必須的,缺失會報錯
  # at 494
  #160229 15:18:07 server id 162  end_log_pos 559 CRC32 0xef3ac14c Anonymous_GTID last_committed=1 sequence_number=2
  SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/;
  # at 559
  #160229 15:18:07 server id 162  end_log_pos 631 CRC32 0xe834f1d8 Query thread_id=102887 exec_time=350 error_code=0
  SET TIMESTAMP=1456730287/*!*/;
  BEGIN
  /*!*/;
  # at 631
  #160229 15:18:07 server id 162  end_log_pos 683 CRC32 0xc64ac724 Table_map: `test`.`ty` mapped to number 127
  # at 683
  #160229 15:18:07 server id 162  end_log_pos 803 CRC32 0x4a5f1c75 Write_rows: table id 127 flags: STMT_END_F
  BINLOG '
  r/DTVhOiAAAANAAAAKsCAAAAAH8AAAAAAAEABHRlc3QAAnR5AAQDDw8DBBQAFAAPJMdKxg==
  r/DTVh7iAAAAeAAAACMDAAAAAH8AAAAAAAEAAgAE//AFAAAABEVFRUUCQzFfAAAA8AEAAAAEQUFB
  QQJDMUMAAADwAwAAAARDQ0NDAkMxQwAAAPAEAAAABEREREQCQzFBAAAA8AIAAAAEQkJCQgJDMTcA
  AAB1HF9K
  '/*!*/;
  # at 803
  #160229 15:18:07 server id 162  end_log_pos 834 CRC32 0x96148022 Xid = 77
 
  COMMIT/*!*/;                                                                                                                -------最后一個commit到最后必須存在
  SET @@SESSION.GTID_NEXT= 'AUTOMATIC' /* added by mysqlbinlog */ /*!*/;
  DELIMITER ;
  # End of log file
  /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
  /*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
  思路就是先將第一部分以及最后一部分提取出來,我們csplite文件(以COMMIT/*!*/; 為分隔標示,不熟悉csplit命令的先去熟悉一下用法),在第一以及最后一部分中間插入單個表的binlog 信息而拼接成一個符合binlog格式的日志文件

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 开鲁县| 泸定县| 石柱| 临江市| 德钦县| 昌吉市| 惠东县| 禹城市| 襄垣县| 康定县| 伽师县| 延边| 清水河县| 天津市| 连州市| 南华县| 兰西县| 勐海县| 大安市| 宕昌县| 顺平县| 岑巩县| 海宁市| 牟定县| 于田县| 高唐县| 铜川市| 滕州市| 革吉县| 汽车| 章丘市| 托克逊县| 广安市| 桑日县| 类乌齐县| 罗甸县| 栾川县| 金坛市| 本溪| 柘荣县| 习水县|