题 MariaDB Cluster与Percona Cluster for MySQL


两者有什么优缺点?我只能在没有任何群集细节的情况下找到有关这两种实现的信息。

我目前正在实施Percona集群,但我目前唯一关心的是MYISAM数据库用于复制。我在这些服务器上运行INNODB中的几个wordpress数据库但是当我需要从其他系统迁移数据库时,它们有时完全或部分是MYISAM,这最近导致了我的设置问题。

从Percona集群迁移到MariaDB集群是一个更好的选择吗?


6
2017-10-11 01:27




在选择群集解决方案之前,任何使用MyISAM的人都可以先迁移到InnoDB - KCD


答案:


两个平台都使用相同的复制机制: 加莱拉。在该链接的页面上,您会注意到有PXC和MariaDB Cluster的图像。

Galera图书馆提供 交易 复制。 MyISAM不进行交易,因此您现在可能遇到的问题非常可能相关,并且在备用平台上不会有任何不同。

目前,复制仅适用于InnoDB存储引擎。不复制对其他类型的表的任何写入,包括系统(mysql。*)表。但是,DDL语句在语句级别进行复制,对mysql。*表的更改将以这种方式进行复制。因此,您可以安全地发出:CREATE USER ...,但发布:INSERT INTO mysql.user ...,将不会被复制。

- http://www.percona.com/doc/percona-xtradb-cluster/limitation.html

目前,MariaDB Galera Cluster仅支持InnoDB / XtraDB存储引擎。

- https://mariadb.com/kb/en/getting-started-with-mariadb-galera-cluster/

当然,PXC使用XtraDB,Percona兼容InnoDB的替代品(名称中有“XtraDB”), MariaDB还使用Percona的XtraDB 而不是Oracle的InnoDB,尽管为了兼顾两个系统,存储引擎仍然称自己为InnoDB。

由于这两个系统共享大量代码,并且都旨在基本上互相替换,因此决定使用哪个平台主要是意见问题。我个人更喜欢供应商“x”,这可能意味着我个人建议你使用MariaDB,也可能意味着我个人建议坚持使用PXC,但我实际上并不需要实际告诉你我的偏好,因为它没关系 - 它主要基于意见和印象,文档和个性,而不是任何有价值的证据。

迁移MyISAM的最佳解决方案可能是将dumpfile修改为 ENGINE=InnoDB (以及任何其他必要的更改)或在独立服务器上暂存它们,然后在尝试将它们导入集群之前将它们转换并导出为完全InnoDB。

如果MyISAM问题是您唯一关注的问题,或者甚至只是您的主要问题,那么MariaDB Cluster和PXC在这方面基本相同 - 他们不支持它,出于一个非常明智的理由 - 这样做是不可行的。


4
2017-10-11 04:12





我为Percona工作,所以我有偏见。我说虽然表面上它们是类似的产品,但是PXC已经发布了更多版本,我们正在做更多的QA,而且到目前为止,我们正在做更多的回馈Codership。

但是,MyISAM的支持也是相同的,我很遗憾地说,如果MyISAM是你的设计要求,你可能不会对任何Galera产品感到满意。 Galera根本不会真正支持MyISAM这样的非交易引擎,就像Innodb一样,我同意迈克尔的观点,如果你搬到Galera,那么从MyISAM迁移是你最好的选择。


3
2017-10-11 20:15