Galera集群 - Autocommit

时间:2015-08-20 12:19:59

标签: mariadb autocommit galera

我设置了一个包含2个节点的galera集群,我在2个服务器上禁用了自动提交。

   set autocommit=0;

在server1和COMMIT上INSERT数据,但server2没有更新数据;

server2需要COMMIT;在SELECT之前;

如何在没有COMMIT的情况下续订数据,除了autocommit = 1?

1 个答案:

答案 0 :(得分:0)

您可能指的是“批判性阅读”问题,而不是autocommit。请参阅wsrep_sync_wait上的手册,SET之前的SELECT指向可能从数据所在节点以外的节点读取数据的SELECT书面。这可以确保捕获复制,从而获得“正确”的答案。

My Galera blog讨论了这个方面,等等。

如果您需要等待SET以外的内容,请使用15代作BEGIN中的值。

(我更喜欢明确使用autocommit=0而不是BEGINs;然后我可以在代码中配对COMMITs和{{1}},而不是让事务'开放'永远。)