两者之间有什么优点和缺点? 我只能find关于这两个实现的信息,没有任何关于集群的细节。
我目前正在实施Percona集群,但目前我唯一关心的是与MYISAM数据库进行复制。 我在这些服务器上的INNODB中运行了几个WordPress数据库,但是当我需要从其他系统迁移数据库时,它们有时是完全或部分MYISAM,这对我的设置最近造成了一些问题。
从一个Percona集群转移到一个MariaDB集群是一个更好的select?
两个平台都使用相同的机制进行复制: Galera 。 在该链接的页面上,您会注意到有以PXC和MariaDB集群为特色的图像。
加莱拉库提供事务复制。 MyISAM不会处理事务,所以现在可能遇到的问题很可能是相关的,在备用平台上也不会有任何不同。
目前复制只能用于InnoDB存储引擎。 对其他types的表(包括系统(mysql。*)表)的任何写入都不会被复制。 但是,DDL语句在语句级复制,并且对mysql。*表的更改将以这种方式进行复制。 因此,您可以安全地发出:CREATE USER …,但发出:INSERT INTO mysql.user …,不会被复制。
– http://www.percona.com/doc/percona-xtradb-cluster/limitation.html
目前MariaDB Galera集群只支持InnoDB / XtraDB存储引擎。
– https://mariadb.com/kb/en/getting-started-with-mariadb-galera-cluster/
当然,PXC使用XtraDB和InnoDB的兼容替代品(在名称中有“XtraDB”), MariaDB也使用Percona的XtraDB而不是Oracle的InnoDB,尽pipe为了兼容这两个系统,存储引擎仍然调用本身InnoDB。
由于这两个系统共享相当数量的代码,并且都旨在实质上是相互替代的,因此决定使用哪个平台在很大程度上是意见的问题。 我个人更喜欢厂商“x”这可能意味着我个人推荐你使用MariaDB,也可能意味着我个人build议坚持使用PXC,但我不需要实际上告诉你我的偏好,因为它并不重要 – 它主要基于意见和印象,文件和个性,而不是任何有价值的证据。
迁移MyISAM的最佳解决scheme可能是将dumpfiles修改为ENGINE=InnoDB (以及任何其他需要的更改),或者将它们转储到独立的服务器上,然后在将它们导入到InnoDB之前转换并导出它们你的集群。
如果MyISAM问题是您唯一关心的问题,甚至只是您最关心的问题,那么MariaDB Cluster和PXC在这方面基本相同 – 他们不支持这个问题,这是非常明智的原因 – 这样做是不可行的。
我在Percona工作,所以我很偏向。 我想说的是,虽然表面上他们是类似的产品,PXC有更多的发布,我们正在做更多的质量保证,并且正在做更多的贡献,而不是玛丽亚到目前为止。
但是,MyISAM的支持也是一样的,我很抱歉地说,如果MyISAM是你的devise需求,你可能不会对任何Galera产品感到满意。 Galera根本就不会像MyISAM那样真的支持像MyISAM这样的非事务引擎,就像Innodb一样,我同意Michael的观点,即如果你移动到Galera上,从MyISAM迁移出去是你的最佳select。