故障案例--binlog_format不为row模式下关于时区设置的一个坑

本文介绍了在MySQL中,当binlog_format不为ROW模式且主从服务器时区不同导致时间数据不一致的故障案例。通过复现方法展示了在UTC和PDT时区下,时间数据的差异,并分析了原因。解决方案包括保持system_time_zone一致或改变binlog_format为ROW。
摘要由CSDN通过智能技术生成

故障现象

有个需求从北美的机房A的DB1为主,北美机房B的DB2为从,建立主从关系。A机房为UTC时区,B机房为PDT时区,结果由于system_time_zone由DB所在的linux时区决定,而这个不可擅自更改,采用了修改time_zone的方式来迂回解决,但是发现主从的时间数据依旧不一致。

复现方法

============这是主库的测试============
mysql> show variables like '%zone%';
+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| system_time_zone | UTC    |
| time_zone        | SYSTEM |
+------------------+--------+
2 rows in set (0.00 sec)

mysql> use test
Database changed
mysql>  create table test(id int,curren_date timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP);<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值