解析MySQL binlog --(2)FORMAT_DESCRIPTION_EVENT
admin
2023-05-03 10:44:12
0

该格式描述事件时binlog version 4中为了取代之前版本的START_EVENT_3事件而引入的。是binlog文件的第一个事件,并在一个binlog文件中仅出现一次。具体定义:
解析MySQL binlog --(2)FORMAT_DESCRIPTION_EVENT
binlog-version:binlog版本
mysql-server version:服务器版本
create timestamp:指明binlog文件的创建时间。如果该binlog是由于切换产生,那么该字段是0
event header length:189
event type header lengths:记录所有事件的私有事件头的长度,event的个数定义5.6,5.7为40个,也就是40个字节

[mysql26@localhost data]$ hexdump -Cv mysql-bin.000002 > 2.txt  
[mysql26@localhost data]$ vi 2.txt  

00000000  fe 62 69 6e 46 c4 a4 5a  0f 0b 00 00 00 74 00 00  |.binF..Z.....t..|  
00000010  00 78 00 00 00 01 00 04  00 35 2e 36 2e 32 36 2d  |.x.......5.6.26-|  
00000020  64 65 62 75 67 2d 6c 6f  67 00 00 00 00 00 00 00  |debug-log.......|  
00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|  
00000040  00 00 00 00 00 00 00 00  00 00 00 46 c4 a4 5a 13  |...........F..Z.|  
00000050  38 0d 00 08 00 12 00 04  04 04 04 12 00 00 5c 00  |8.............\.|  
00000060  04 1a 08 00 00 00 08 08  08 02 00 00 00 0a 0a 0a  |................|  
00000070  19 19 00 01 c8 a1 c5 19  62 c4 a4 5a 02 0b 00 00  |........b..Z....|  
00000080  00 47 00 00 00 bf 00 00  00 08 00 01 00 00 00 00  |.G..............|  
00000090  00 00 00 03 00 00 1a 00  00 00 00 00 00 01 00 00  |................|  
000000a0  00 40 00 00 00 00 06 03  73 74 64 04 21 00 21 00  |.@......std.!.!.|  
000000b0  21 00 79 7a 73 00 42 45  47 49 4e 30 85 8c ba 62  |!.yzs.BEGIN0...b|  
000000c0  c4 a4 5a 13 0b 00 00 00  2d 00 00 00 ec 00 00 00  |..Z.....-.......|  
000000d0  00 00 46 00 00 00 00 00  01 00 03 79 7a 73 00 02  |..F........yzs..|  

分析:

1、开头4个字节binlog magic number:fe 62 69 6e,即.bin

2、第一个binlog事件是FORMAT_DESCRIPTION_EVENT。

3、timestamp: 46 c4 a4 5a,即小端显示0x5aa4c446,十进制1520747590,
[mysql26@localhost data]$ date -d "@1520747590"
Sat Mar 10 21:53:10 PST 2018

binlog解析的时间是:#180310 21:53:10 server id 11 end_log_pos 120 CRC32 0x19c5a1c8 Start: binlog v 4, server v 5.6.26-debug-log created 180310 21:53:10 at startup
3、event type:0f,即15

5、server-id:0b 00 00 00,即小端显示0x00 00 00 0b,即为11

6、event size:74 00 00 00:0x 00 00 00 74,116。120-4(.bin)

7、next-log pos:78 00 00 00:0x00 00 00 78,120,下一个event的位置,相对文件头位置,和end_log_pos 120一致

8、flag:01 00;为0X0001那么会在MYSQLBINLOG输出中报一个警告说本binlog没有关闭

9、binlog version:04 00,小端显示及0X0004,和mysqlbinlog中的解析Start: binlog v 4一致

10、mysql server version:5.6.26-debug-log,剩下的字节0填充

00000010                              35 2e 36 2e 32 36 2d  |.x.......5.6.26-|  
00000020  64 65 62 75 67 2d 6c 6f  67 00 00 00 00 00 00 00  |debug-log.......|  
00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|  
00000040  00 00 00 00 00 00 00 00  00 00 00   

11、create stamp:46 c4 a4 5a,和event头一样

12、event header length:13,即19字节

13、event header lengths:array[30]-[32]:0a 0a 0a,表示 WRITE_ROWS_EVENT = 30,UPDATE_ROWS_EVENT = 31, DELETE_ROWS_EVENT = 32的私有事件头长度

00000050  38 0d 00 08 00 12 00 04  04 04 04 12 00 00 5c 00  |8.............\.|  
00000060  04 1a 08 00 00 00 08 08  08 02 00 00 00 0a 0a 0a  |................|  
00000070  19 19 00 01 c8 a1 c5 19  

参考:http://blog.itpub.net/7728585/viewspace-2133189/

相关内容

热门资讯

7月手机推荐:涨价潮下,哪些手... “天天说手机涨价,这个时候买手机,不是大冤种吗?”那你就错了。 自今年3月起,因为成本压力持续提升,...
日本正式设立“国家情报局” △日本首相官邸(资料图)当地时间7月31日,日本政府正式设立“国家情报局”。首任局长为原和也。原和也...
38岁男子被北大录取,18年前... 2026年,连续三年高考后,38岁的清华毕业生李龙收到了北大医学部的录取通知书,他终于不必再回答“明...
“极不寻常”!爆料称特朗普或拒... 英国路透社29日发布“独家消息”称,特朗普政府有可能推迟或直接拒绝法国总统马克龙提名的新一任法国驻美...
马斯克:已要求SpaceXAI... IT之家 7 月 29 日消息,据调查媒体 404 Media 此前报道,人工智能公司正在大量收购稀...
和美德决裂、赞扬中国…法国这个... 法国极左翼政党“不屈法兰西”(La France Insoumise)领导人让-吕克·梅朗雄,正以强...
长鑫市值3.6万亿超腾讯:数千... 出品|搜狐科技 作者|张雅婷 7月27日,长鑫科技正式登陆科创板。 截至发稿,长鑫科技股价54.65...
重庆彭水山体崩塌已确认51人遇... 7月17日9时许,重庆彭水汉葭街道发生大型山体崩塌灾害。7月30日晚,彭水发布情况通报,截至目前,陆...
民政部:截至目前各地共办理婚姻... 澎湃新闻记者 刘璐7月30日,民政部举行第三季度例行新闻发布会。会上,民政部新闻发言人李婉丽介绍,截...
罗永浩13年前超前构想!这套电... 快科技7月26日消息,今日,罗永浩发文谈到网络视频电视机傻瓜化。 他表示,其实网络视频电视机做成傻瓜...