本文主要介绍PolarDB-X 1.0分布式事务的基本原理。

分布式事务通常使用二阶段提交来保证事务的原子性(Atomicity)和一致性(Consistency)。

二阶段事务会将事务分为以下两个阶段:

  • 准备(PREPARE)阶段:在PREPARE阶段,数据节点会准备好所有事务提交所需的资源(例如加锁、写日志等)。
  • 提交(COMMIT) 阶段:在COMMIT阶段,各个数据节点才会真正提交事务。

当提交一个分布式事务时,PolarDB-X 1.0服务器会作为事务管理器的角色,等待所有数据节点(MySQL服务器) PREPARE成功,之后再向各个数据节点发送COMMIT请求。

分布式事务

关于如何使用分布式事务,详情请参见基于MySQL 5.7的分布式事务