如何理解mysql binlog中的时间戳?

时间:2014-01-05 12:23:17

标签: mysql timestamp binlog

binlog总是如下所示:

#140105 18:49:33 server id 2  end_log_pos 354   Query   thread_id=1     exec_time=0     error_code=0
SET TIMESTAMP=1388918973/*!*/;
/* some SQL statement */
/*!*/;

官方网站上的插图是:

  

在第一行中,后面的数字表示开始   事件在二进制日志文件中的位置。

     

第二行以日期和时间开始,表示何时   语句在事件发起的服务器上启动。对于   复制,此时间戳传播到从属服务器。服务器ID   是发起事件的服务器的server_id值。   end_log_pos指示下一个事件开始的位置(即,它是   当前事件的结束位置+ 1)。 thread_id表示哪个   线程执行了该事件。 exec_time是执行的时间   事件,在主服务器上。在奴隶上,它是结束的差异   从机上的执行时间减去上的执行时间   主。差异可作为复制程度的指标   落后于主人。 error_code表示执行的结果   事件。零意味着没有发生错误。

它说“第二行以日期和时间开始”,似乎这种日期时间格式与“SET TIMESTAMP”条款完全不同,其中数字表示从1970年开始的秒数1-1,但是什么是“#140105 18:49:33”意味着,那是什么日期?

1 个答案:

答案 0 :(得分:2)

140105表示YYMMDD。

05 JAN(01)2014

显然是时间18:49:33