mysql提交事务和分布式事务的一个疑问?

发布于 2022-09-06 09:59:42 字数 469 浏览 10 评论 0

这里以`mysql innodb`为例。

我刚刚查阅资料时发现这么一段话:“MySQL中的XA实现分为:外部XA和内部XA。外部XA是指我们通常意义上的分布式事务实现;内部XA是指单台MySQL服务器中,Server层作为TM(事务协调者),而服务器中的多个数据库实例作为RM,而进行的一种分布式事务,也就是MySQL跨库事务;也就是一个事务涉及到同一台MySQL服务器中的两个innodb数据库(因为其它引擎不支持XA)。”

那么问题来了,首先可以明确的是:上文的外部XA是分布式事务,内部XA是平时我们说的普通的事务。但是我的理解,分布式事务指的应该是跨库的事务,也就是多个库之间的一个事务,也就是说,如果在多台服务器上的多个库,算是分布式事务,那么在单台服务器上,存在多个库,也应该算是分布式事务。但是在上面那段话来看,貌似单台服务器多个库之间的事务成了一个普通事务,而不是分布式事务,求解惑

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

好听的两个字的网名 2022-09-13 09:59:42

xa就是分布式事务,内部xa也是分布式事务,人家哪里说内部xa不是分布式事务了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文