首页 > 课堂 > 基础知识 > 正文

Timestamp时间戳精确到微妙级别 显露bug

2024-09-12 20:30:10
字体:
来源:转载
供稿:网友
  timestamp时间戳精确到微妙级别,出现bug
 
  自MariaDB5.3版本起,timestamp时间戳精确到微妙级别,但这里存在一个致命bug,它会导致binlog记录的内容损坏,致使闪回恢复功能失效、Canal工具抓取binlog失败。
  影响版本MariaDB 5.5/10.0
 
  复现:
  我使用的版本为10.0.29-MariaDB-enterprise
  Binlog格式为ROW(Mixed不存在此BUG)
 
  创建表结构,注意:timestamp(6),精确到微妙
 
  create table hcy(create_time timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6));
 
  插入数据
 
  insert into hcy(create_time) values(now());
 
  此时我们查看BINLOG文件,

  1、时间变成了负数。
  2、Corrupted replication event was detected. 检测到复制被损坏。
  3、10.0低版本可能会造成主从同步失败。

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表