このトピックで説明する分散トランザクションは、MySQL 5.7およびPolarDB-X 1.0 V5.3.4以降を使用するユーザーを対象としています。
概要
カスタムApsaraDB RDS for MySQLインスタンスのMySQLエンジンのバージョンが5.7以降の場合、PolarDB-X 1.0はデフォルトでXAプロトコルに基づいて分散トランザクションを処理します。
PolarDB-X 1.0の他のバージョンのカスタムApsaraDB RDS For MySQLインスタンスで分散トランザクションを使用する方法の詳細については、「MySQL 5.6に基づく分散トランザクション」をご参照ください。
Usage
PolarDB-X 1.0での分散トランザクションのユーザーエクスペリエンスは、MySQLエンジンを実行するスタンドアロンデータベースのユーザーエクスペリエンスと同じです。 例:
SET AUTOCOMMIT=0を実行して、トランザクションを開始できます。COMMITを実行してトランザクションをコミットできます。ROLLBACKを実行すると、トランザクションをロールバックできます。
トランザクション内のSQL文に単一のシャードのみが含まれる場合、PolarDB-X 1.0はトランザクションを非分散トランザクションとして扱います。 この場合、システムはトランザクションをカスタムApsaraDB RDS for MySQLインスタンスに直接ルーティングします。 トランザクションのSQL文を使用して複数のシャードのデータを変更する場合、PolarDB-X 1.0はトランザクションを分散トランザクションに自動的にアップグレードします。
よくある質問
Q: コンソールで分散トランザクションを有効にする必要がありますか?
A: いいえ。 分散トランザクションは、MySQLバージョンとPolarDB-X 1.0バージョンが要件を満たしている限り、スタンドアロンMySQLデータベースで使用するのと同じ方法で使用できます。
Q: 分散トランザクションを使用するには、MySQLおよびPolarDB-X 1.0のどのバージョンが必要ですか?
A: 最新の分散トランザクションを使用するには、MySQL 5.7以降とPolarDB-X 1.0 V5.3.4以降が必要です。PolarDB-X 1.0 MySQLバージョンとPolarDB-X 1.0バージョンがこの要件を満たしていない場合、PolarDB-X 1.0インスタンスとカスタムApsaraDB RDS for MySQLインスタンスを最新バージョンにアップグレードすることを推奨します。 他のバージョンのカスタムApsaraDB RDS For MySQLインスタンスおよびPolarDB-X 1.0インスタンスで分散トランザクションを使用する方法の詳細については、「MySQL 5.6に基づく分散トランザクション」をご参照ください。