0

现在我找到并配置 mariadb galera 集群?但我不知道为什么 mariadb galera 集群只支持 InnoDB。

请建议修复它。

十分感谢

4

1 回答 1

2

基本上没有理由支持除 InnoDB 之外的任何引擎。您可以拥有 MyISAM 或 MEMORY 表,但不能同步复制到其他节点。

只有 InnoDB 才能实现同步复制。我确信 MyISAM 和 MEMORY 永远不会得到完全支持。然而,其他事务安全引擎(Tokudb?)可能有朝一日。

为什么要其他引擎?也许我们可以通过其他方式帮助您实现真正的目标。

附加物...

Galera 实现的同步复制需要能够ROLLBACKCOMMIT. 否则,当允许写入所有节点时,重复键将是一个无法解决的问题。

顺便说一句... NDB 采用了完全不同的方法——“最终一致性”,其中重复的密钥可以进入系统,但用户必须提供一种算法来修复混乱。

单台机器上的 InnoDB 在执行事务中的语句时进行检查。加莱拉没有。它是“乐观的”——在COMMIT. 这提供了性能,因为只有一次往返到其他节点。(因此,“中型”交易是最优的。)

MyISAM 没办法ROLLBACK;这取决于前面的锁定表。在另一个节点上锁定表会非常笨拙和低效。

即使在 WAN 中,Galera 也可以高效工作——这也是因为在COMMIT.

于 2015-07-07T06:26:19.133 回答