mysql主从分区表不存在

时间:2015-06-03 07:21:26

标签: mysql replication master-slave

我使用create Raw Data Files进行mysql-master-slave复制,设置完成后,在查询分区表时返回table xxx doesn't exists,但在其他表上工作正常。

而且,当我改为使用mysqldump时,一切正常。

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

如果分区表不起作用但其他表没有工作且mysqldump工作正常,我最好的猜测是你的分区数据不会存储在与其余数据相同的位置。因此,当您使用tar,zip或rsync方法复制数据目录时,会遗漏构成分区表的数据。您需要找到存储分区数据的位置,并将其与数据目录的其余部分一起移动。

但是,根据您在下面的评论,您拥有所谓的famous Schrodinger table。基于Schrodinger's Cat悖论,这是Mysql认为该表存在的地方,因为它在您运行show tables时显示,但不允许您查询它;因为它存在但不存在。

通常这是因为没有正确复制元数据(如ibdata1文件和ib_logfiles)。如果可能的话,您可以做的一件事就是remove表中的partition并再次尝试使用rsync。如果仍然出现此错误,则与表分区的事实无关。然后,这个测试会让我相信你没有正确复制所有数据。