本文描述的分布式事务针对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的分布式事务。