このトピックでは、ApsaraDB RDS for MySQLインスタンスのデータレプリケーションモードをクエリおよび変更する方法について説明します。 データレプリケーションモードでは、RDSインスタンスからセカンダリRDSインスタンスにデータをレプリケートする方法を指定します。 適切なデータレプリケーションモードにより、RDSインスタンスの可用性が向上します。
前提条件
RDSインスタンスは、次のいずれかの要件を満たしています。
RDSインスタンスは、ローカルSSDを使用してRDS High-availability EditionでMySQL 5.7またはMySQL 8.0を実行します。
RDSインスタンスは、拡張SSD (ESSD) を使用したRDS High-availability EditionでMySQL 5.7またはMySQL 8.0を実行し、20201031以降のマイナーエンジンバージョンを実行します。
説明RDSインスタンスが標準SSDストレージタイプを使用している場合、ストレージタイプをESSDにアップグレードする必要があります。 詳細については、「ApsaraDB RDS For MySQLインスタンスのストレージタイプを標準SSDからESSDにアップグレードする」をご参照ください。
RDSインスタンスのマイナーエンジンバージョンを更新する方法の詳細については、「ApsaraDB RDS For MySQLインスタンスのマイナーエンジンバージョンの更新」をご参照ください。
RDSインスタンスは、RDS High-availability EditionでMySQL 5.6を実行します。
RDSインスタンスは、RDS Cluster EditionでMySQL 5.7またはMySQL 8.0を実行します。
MySQL 5.5
データレプリケーションモード
MGR
MySQLグループレプリケーション (MGR) は、分散システムにおけるコンセンサスのプロトコルであるPaxosに基づいて開発されています。 トランザクションがプライマリノードでコミットされる前に、システムはトランザクションのデータをセカンダリノードに送信し、セカンダリノードの大部分がデータを受信することを保証します。 半同期レプリケーションや非同期レプリケーションと比較して、MGRは強力なデータ一貫性と高いデータセキュリティを保証します。 詳細については、「MGRの概要」をご参照ください。
半同期
アプリケーションによって開始された更新がプライマリRDSインスタンスで完了すると、関連するログがすべてのセカンダリRDSインスタンスに同期されます。 更新の実行に使用されるトランザクションは、セカンダリRDSインスタンスがログを受信した後にコミットされたと見なされます。 データベースシステムは、セカンダリRDSインスタンスがログを再生するのを待つ必要はありません。
セカンダリRDSインスタンスが使用できない場合、またはプライマリRDSインスタンスとセカンダリRDSインスタンスの間でネットワークの中断が発生した場合、半同期モードは非同期モードに降格されます。
非同期
アプリケーションがデータの追加、削除、または変更のリクエストを開始すると、プライマリRDSインスタンスは、リクエストされた操作が完了した直後にアプリケーションに応答します。 同時に、プライマリRDSインスタンスはデータをセカンダリRDSインスタンスに非同期にレプリケートします。 非同期モードでは、セカンダリRDSインスタンスが使用できない場合でも、プライマリRDSインスタンスのワークロードは期待どおりに実行されます。 ただし、プライマリRDSインスタンスが使用できない場合、プライマリRDSインスタンスとセカンダリRDSインスタンス間のデータの不一致によりエラーが発生する可能性があります。
さまざまなMySQLバージョンとRDSエディションでサポートされているデータレプリケーションモード
RDSエディション | レプリケーションモード |
RDS高可用性エディション | 準同期 |
非同期 | |
RDSクラスターエディション | 準同期 |
非同期 | |
MGR | |
RDSベーシックエディション | 非対応 |
データレプリケーションモードの照会
- [インスタンス] ページに移動します。 上部のナビゲーションバーで、RDSインスタンスが存在するリージョンを選択します。 次に、RDSインスタンスを見つけ、インスタンスのIDをクリックします。
表示されるページの左側のナビゲーションウィンドウで、[サービスの可用性] をクリックします。
表示されるページの [可用性情報] セクションで、[データレプリケーションモード] パラメーターの値を確認します。
データ複製モードの変更
- [インスタンス] ページに移動します。 上部のナビゲーションバーで、RDSインスタンスが存在するリージョンを選択します。 次に、RDSインスタンスを見つけ、インスタンスのIDをクリックします。
表示されるページの左側のナビゲーションウィンドウで、[サービスの可用性] をクリックします。
表示されるページの [可用性情報] セクションで、インスタンス HA 設定を変更する をクリックします。
表示されるダイアログボックスで、データレプリケーションモードを選択し、[OK] をクリックします。
説明RDSインスタンスがRDS Cluster Editionを実行している場合、[基本情報] ページの [インスタンストポロジ管理] セクションでデータレプリケーションモードを変更できます。
よくある質問
どのデータ複製モードが推奨されますか?
ビジネス要件に基づいてデータ複製モードを選択できます。 財務グレードの信頼性を確保するために強力なデータの一貫性が必要な場合は、MGRモードを使用することを推奨します。 MGRモードは、RDS Cluster Editionでのみサポートされます。 迅速な応答が必要な場合は、非同期モードを使用することを推奨します。 他のシナリオでは、半同期モードを使用できます。
RDSインスタンスのデータレプリケーションモードを変更できないのはなぜですか?
異なるRDSインスタンスは、異なるデータレプリケーションモードをサポートします。 詳細については、「さまざまなMySQLバージョンとRDSエディションでサポートされているデータレプリケーションモード」をご参照ください。
関連する操作
操作 | 説明 |
インスタンスのデータレプリケーションモードと高可用性モードを変更します。 |