本文描述的分布式事務針對MySQL版本≥5.7,并且PolarDB-X 1.0版本≥5.3.4的用戶。
基本原理
對于MySQL 5.7及更高版本,PolarDB-X 1.0默認基于XA事務協(xié)議進行分布式事務。
如果不滿足版本要求,請您移步基于MySQL 5.6的分布式事務。
如何使用
PolarDB-X 1.0分布式事務使用體驗和單機MySQL數(shù)據(jù)庫完全一致,例如:
SET AUTOCOMMIT=0
開啟一個事務;COMMIT
提交當前事務;ROLLBACK
回滾當前事務。
如果事務中的SQL僅涉及單個分片,PolarDB-X 1.0會將其作為單機事務直接下發(fā)給MySQL;如果事務中的SQL語句修改了多個分片的數(shù)據(jù),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的分布式事務。