目前我正在使用基于Galera集群的Percona XtraDB集群。在Galera中,我看到了以下是:Warning: When using Galera Cluster in master-slave mode, all four levels are available to you, to the extend that MySQL supports it. In multi-master mode, however, you can only use the REPEATABLE-READ level.
问题是我的应用程序使用的是READ-COMMITTED隔离级别。所以我想知道Galera是如何在这种隔离水平下运作的。根据上述警告,Galera应该只在主从模式下工作.这意味着只有一个节点应该允许写入。
但我做了一个实验:拥有一个有3个节点的集群(在一台PC上使用Docker),我改变了所有节点的隔离级别,以读取提交,重新启动这些节点,并尝试在每个节点上编写查询--所有这些都成功完成,这与上述警告相冲突。
所以,我的问题是::
发布于 2019-02-28 15:26:26
就我所能理解的不同信息源(如这和这)而言,DBMS引擎可能支持“本地”隔离级别。后一篇文章说:
单个集群节点可以在MySQL/InnoDB支持的范围内提供任何隔离级别。
而且只有节点之间的通信工作方式不同: Galera根本不支持SERIALIZABLE级别,而且可以与其他节点一起工作。
关于第二个问题。Galera总是在“大师”模式下工作(链接?)。而且只有配置中的一些手动更改才能强制“从”实例拒绝“写”查询。
不过,如果有人有更多的信息或知道我的答案是错误的-欢迎写你的答案。
https://stackoverflow.com/questions/54926780
复制相似问题