不同服务器上两个数据库的 MySQL 事务

Ráp*_*rás 6 mysql transactions

是否可以进行一个 MySQL 事务来更改不同服务器上的数据库?

我需要:

  1. 插入第一个数据库
  2. 从第一个数据库中选择
  3. 插入到第二个数据库
  4. 如果其中任何一个失败,则恢复到原始状态

egg*_*yal 6

正如上面所观察到的,这个问题与Can I to a transaction across multiple MySQL Databases?非常相似。 虽然该问题涉及同一服务器上的不同数据库,但其接受的答案仍然适用。

事实上,正如XA Transactions下记录的那样:

存储引擎支持XA事务InnoDB

[删除]

XA支持分布式事务,即能够允许多个单独的事务资源参与全局事务。事务资源通常是 RDBMS,但也可以是其他类型的资源。

[删除]

分布式事务的一些示例:

[删除]
  • 应用程序执行涉及不同数据库服务器的操作,例如 MySQL 服务器和 Oracle 服务器(或多个 MySQL 服务器),其中涉及多个服务器的操作必须作为全局事务的一部分发生,而不是作为每个服务器本地的单独事务发生。