有人知道Mysql为什么需要序列化隔离级别才能用XA事务实现ACID属性吗?如果使用可重复读取和XA,会丢失什么呢?
但是,对于分布式事务,必须使用SERIALIZABLE隔离级别来实现ACID属性。对非分布式事务使用可重复读取就足够了,而对分布式事务则不使用可重复读取。
http://dev.mysql.com/doc/refman/5.6/en/xa.html
发布于 2013-12-09 00:39:38
我认为这与REPEATABLE READ的性质和mysql引擎中XA的局限性有关(MySQL并不完全符合XA规范)。
已知的一个问题是,某些具有复制的崩溃场景可能导致事务不在binlog:出发地: XA事务的限制中。
在上述情况下,酸的一致性就丧失了。
我认为,SERIALIZABLE强制执行的严格行为在一定程度上减轻了这一点,因为它们描述xid等的工作方式是必需的。但对这些问题的详细阐述令人怀疑。Mysql 5.6 -一致阅读
https://stackoverflow.com/questions/6263219
复制相似问题