我知道这个问题以前是在问这个问题,但是我真的很困惑,不知道该如何继续这个问题,我真的很想知道,是什么原因导致了这个错误。

我们的复制效果没有任何问题。我们的设置包括一个数据库主和四个奴隶,所有运行的Percona mysql,相同版本(5.5.x)。前几天,我们的数据库主由于硬件问题而死。因此,我们继续做了新主人的奴隶。不应该有太多问题,而且确实没有问题。但是现在,在又一次完成事情之后,我不断地在我的系统中获得了很多日志条目:

Mar 15 13:17:25 dbslave3 mysqld: 120315 13:17:25 InnoDB: Error: page 263337 log sequence number 34159788445
Mar 15 13:17:25 dbslave3 mysqld: InnoDB: is in the future! Current system log sequence number 1096541424.

好的,所以我使用Xtrabackup(以前是为此用于此事)来创建新主人的转储,并使用转储将其应用于从奴隶上。没有成功。此错误消息仍然存在同样的问题。接下来,我尝试了以下内容:

我将网站脱机,确保所有数据都复制到所有奴隶 - 的确:复制 在职的!没有数据丢失,每个从属都拥有它应该拥有的所有数据。

接下来我做了 reset slave 在奴隶和主人上,我做了 reset master. 。我认为这应该重置任何Binlogs,然后重新开始以新鲜的序列编号重新开始。接下来我做了 show master status 并使用了新的序列文件和编号 change master to ... 在奴隶上的命令。我再次激活了复制,并再次将网站在线上网。

没有成功!仍然存在同样的问题。所以我最大的问题:

WTF正在进行!该错误如何发生:

  • 使用Xtrabackup的新鲜设置奴隶
  • 在Binlog重置大师和奴隶之后

如何解决?我的意思是:我读了很多关于在数据库中插入千兆字节的有关“序列指针可以赶上的” ...但这听起来很像肮脏的hack和 不能 成为解决这个问题的真正解决方案,不!我最大的担心是:使用这种肮脏的黑客确实解决了问题吗?

还有其他想法,我能做什么?使用mysqldump倾倒数据并再次导入数据是没有选项,因为数据库是如此之大,以至于需要长期导入它。

更新

我还做的是:倾倒其中一个奴隶,包括:完全删除mysql,删除所有与MySQL相关的内容,包括BINLOGS,数据库等,并再次将其设置 - 没有成功。那是我在上面询问的新安装。

有帮助吗?

解决方案

似乎没有人对这个问题有真正的解决方案,至少我无法挖掘任何有用的东西。但是显然,它可以定期运行并清理日志,因此您的服务器不会被日志填充...

这都是非常奇怪的 - 我的拙见。

许可以下: CC-BY-SA归因
不隶属于 dba.stackexchange
scroll top