【问题标题】:How to understand the timestamp in the mysql binlog?如何理解mysql binlog中的时间戳?
【发布时间】:2014-01-22 21:14:18
【问题描述】:

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 */
/*!*/;

来自官网的插图是:

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

第二行以日期和时间开头,指示何时 语句在事件起源的服务器上启动。为了 复制,这个时间戳被传播到从服务器。服务器编号 是事件发起的服务器的 server_id 值。 end_log_pos 表示下一个事件从哪里开始(也就是说,它是 当前事件的结束位置 + 1)。 thread_id 表示哪个 线程执行了事件。 exec_time 是执行的时间 事件,在主服务器上。在奴隶上,这是结局的不同 从机上的执行时间减去从机上的开始执行时间 掌握。差异可作为复制量的指标 落后于主人。 error_code 表示执行结果 事件。零表示没有发生错误。

上面写着“第二行以日期和时间开头”,似乎这种日期时间格式与“SET TIMESTAMP”子句有很大不同,其中数字表示从1970年开始的秒数- 1-1,但是“#140105 18:49:33”是什么意思,那是那个日期?

【问题讨论】:

    标签: mysql timestamp binlog


    【解决方案1】:

    140105 表示 YYMMDD。

    2014 年 1 月 5 日(01)

    显然 18:49:33 是时间

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-16
      • 2021-02-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-03
      相关资源
      最近更新 更多