事件时间戳:
buf[0] ~ buf[3]的四个字节,存储了执行操作前的时间戳。
事件长度:
Buf[9]开始的四个字节构成的整数,可以使用如下的方式来进行整数转换:
#define UCHAR(ptr) ((*(ptr)+256)%256)
const char *ptr = buf + 9;
unsigned int data_len = UCHAR(ptr) + (UCHAR(ptr+1)<<8) + (UCHAR(ptr+2)<<16) + (UCHAR(ptr+3)<<24);
获取数据库和表名:
由于在insert/delete/update事件中不记录表的相关信息,因此每次DML操作都会产生一个TABLE_MAP_EVENT事件,其中存储了获取数据库名和表名。