本文描述的分布式事务针对MySQL版本≥5.7,并且PolarDB-X 1.0版本≥5.3.4的用户。

基本原理

对于MySQL 5.7及更高版本,PolarDB-X 1.0默认基于XA事务协议进行分布式事务。

如果不满足版本要求,请您移步基于MySQL 5.6的分布式事务

如何使用

PolarDB-X 1.0分布式事务使用体验和单机MySQL数据库完全一致,例如:

  • SET AUTOCOMMIT=0开启一个事务;
  • COMMIT提交当前事务;
  • ROLLBACK回滚当前事务。

如果事务中的SQL仅涉及单个分片,PolarDB-X 1.0会将其作为单机事务直接下发给MySQL;如果事务中的SQL语句修改了多个分片的数据,PolarDB-X 1.0会自动地将当前事务升级为分布式事务。

常见问题

Q: 使用分布式事务需要在控制台开启吗?

A: 不需要显式开启,只要版本达到要求,即可以直接像单机MySQL那样使用事务。

Q: 分布式事务对版本是否有要求?

A: PolarDB-X 1.0新版分布式事务要求MySQL版本≥5.7,PolarDB-X 1.0版本≥5.3.4。如果您的MySQL或PolarDB-X 1.0版本不满足上述要求,建议您升级到新版,或查看基于MySQL 5.6的分布式事务