mysql 1597_MySQL复制之时区问题

今天接到一需求,说要在国际间为MySQL建立复制。这其实没什么的,网络环境再差,MySQL也是可以应对的。但偏偏出现时区问题的错误!

错误如下:

[Warning] Slave I/O: Get master clock failed with error: Lost connection to MySQL server during query, Error_code: 2

[Warning] Slave I/O: Master command COM_REGISTER_SLAVE failed: failed registering on master, reconnecting to try again, log '1.000001' at position 48920, Error_code: 1597

slave 无法获得master的clock,MySQL  time_zone 变量默认等于=SYSTEM 即采用系统的时区。修改时区方式:set global time_zone='+00:00' 或者 set global time_zone='-11:00';单纯的修改DB的时区,可以能会造成本地程序混乱,最终决定修改系统的时区。这个问题交给了我们的运维(crontab的时区也要搞定),后来重启DB搞定

在这里简单总结下建立复制注意事项:

1、server_id 要唯一

2、binlog 和 relay_log 名字要自定义。不能采用 hostname.log(采用修改系统hostname时可能造成数据库无法启动)

3、数据库时区要一致

4、对专门复制用的用户 要在master和slave上同时建立账号(方便故障切换,为以后自动化做准备)

5、对于在slave端进行数据库过滤的时候,建议使用:replicate__wild_do_table(这样对于statement 模式的复制 不用考虑是否使用use 语句的影响。可参考:http://weipengfei.blog.51cto.com/1511707/1070485

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值