4.6.7.1 mysqlbinlog 十六进制转储格式

--hexdump选项使mysqlbinlog生成二进制日志内容的十六进制转储:

shell> mysqlbinlog --hexdump master-bin.000001

十六进制输出由以#开头的 Comments 行组成,因此对于前面的命令,输出看起来像这样:

/*!40019 SET @@SESSION.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
# at 4
#051024 17:24:13 server id 1  end_log_pos 98
# Position  Timestamp   Type   Master ID        Size      Master Pos    Flags
# 00000004 9d fc 5c 43   0f   01 00 00 00   5e 00 00 00   62 00 00 00   00 00
# 00000017 04 00 35 2e 30 2e 31 35  2d 64 65 62 75 67 2d 6c |..5.0.15.debug.l|
# 00000027 6f 67 00 00 00 00 00 00  00 00 00 00 00 00 00 00 |og..............|
# 00000037 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 |................|
# 00000047 00 00 00 00 9d fc 5c 43  13 38 0d 00 08 00 12 00 |.......C.8......|
# 00000057 04 04 04 04 12 00 00 4b  00 04 1a                |.......K...|
#       Start: binlog v 4, server v 5.0.15-debug-log created 051024 17:24:13
#       at startup
ROLLBACK;

十六进制转储输出当前包含以下列 table 中的元素。此格式可能会更改。有关二进制日志格式的更多信息,请参见MySQL 内部:二进制日志

  • Position:日志文件中的字节位置。

  • Timestamp:事件时间戳记。在所示示例中,'9d fc 5c 43''051024 17:24:13'的十六进制 table 示形式。

  • Type:事件类型代码。

  • Master ID:创建事件的主服务器的服务器 ID。

  • Size:事件的大小(以字节为单位)。

  • Master Pos:下一个事件在原始主日志文件中的位置。

  • Flags:事件标志值。