我有2台服务器,硬件和软件都相同。
我已经安装了Percona XtraDB Cluster最新版本。提升了集群。
Wsrep报告一切正常,两个节点都已连接。
在node1上创建测试数据库,立即同步到node2。
看起来一切正常。
然而
我在节点1上创建了基本DATA,通过mysqldump从其他服务器导入了mysq base。
网站工作正常,看起来一切都已成功完成。
但后来我发现了一些有趣的东西。
node1上的数据库大小为150 MB,而node2上的数据库大小为147 MB。
我检查过,有些桌子确实是空的。
现在非常有趣。
如果我手动将数据导入node2上的基础(这个是147 MB),则大小变为150MB。然后,节点1上的基础下降到147MB。
所以任何想法为什么会发生这种情况?为什么一个节点总是拥有3mb的较小数据库,而不是同一个节点。这将取决于我们将数据导入数据库的节点。
所以简而言之,如果我在node1上导入,那么node2将短3 MB,反之亦然。
任何人都有类似的问题,可能会让我朝着正确的方向推进? 日志看不到任何奇怪或错误。
PS .. 我在percona论坛上也问过,但有90%的主题没有回复,所以我没有太多希望在那里做出回应。
答案 0 :(得分:0)
想想我找到了解决方案。
Percona集群无法使用myisam引擎复制表。它只会使用innodb引擎复制和工作表。
答案 1 :(得分:0)
有点老问题,但您可能感兴趣的是,您可以尝试MyIsam的一些实验性复制:
以下限制适用于Percona XtraDB群集: •复制仅适用于InnoDB存储引擎。对其他类型的表的任何写入,包括系统 (mysql。)表不会被复制。但是,DDL语句在语句级别和复制中复制 到mysql。表将以这种方式复制。因此,您可以安全地发出CREATE USER ...,但发布 INSERT INTO mysql.user ...将不会被复制。您可以启用实验性MyISAM复制 支持使用wsrep_replicate_myisam变量。
取自官方documentation
我没有尝试过,因为我们在InnoDB上运行,但对于现在/将来阅读这篇文章的人来说可能会有所帮助