Mysql slave状态显示时区错误

时间:2016-12-05 05:33:49

标签: mysql amazon-web-services master-slave

运行奴隶状态时出现以下错误。

Error 'Unknown or incorrect time zone: 'UTC'' on query. Default database: 'cf'. Query: 'BEGIN'

master是RDS实例。奴隶设置在ec2实例中。 有人可以帮我这个吗?

回复后的版本

我也想知道为什么奴隶抛出错误,一旦我从主人那里恢复数据它开始工作。然后一段时间后它又开始出现同样的错误。为什么会出现这种随机行为?

目前,导入时区表解决了这个问题。

在RDS master中创建ec2实例内的slave时,还需要考虑什么。我将来会遇到这种意想不到的错误吗?从主RDS配置从站的正确方法是什么。

1 个答案:

答案 0 :(得分:1)

在主服务器上的mysql架构内,有一些名称以time_zone*开头的表。

这些表需要包含与主数据库相同的数据。

(就此而言,mysql架构中的所有表格都需要拥有主数据,但如果没有这些数据,您可以在很大程度上取决于各种因素。当主人是RDS时,书中的所有表都需要一个微妙的触摸,因为如果你不小心,你最终可能会锁定你自己的副本SUPER特权。只做时区表应该是安全的。)

从主服务器转储这些表 - 至少是时区表 - 并将它们加载到从服务器上,然后重启从服务器上的MySQL服务器守护程序。加载时区表后需要重新启动,因为时区信息可以缓存在内存中--MySQL的时区功能不会从时区表中连续读取,它会根据需要读取它们但是然后缓存结果。

在此之后,复制应重试失败的语句并自动继续。