Amazon RDS での MySQL のレプリケーションの使用 - Amazon Relational Database Service

Amazon RDS での MySQL のレプリケーションの使用

リードレプリカは通常、Amazon RDS の DB インスタンス間でレプリケーションを設定するために使用します。リードレプリカの概要については、「DB インスタンスのリードレプリカの操作」を参照してください。Amazon RDS for MariaDB でリードレプリカを操作する具体的な方法については、MySQL リードレプリカの使用 を参照してください。

RDS for MySQL のレプリケーションにはグローバルトランザクション ID (GTID) を使用できます。詳細については、「GTID ベースレプリケーションを使用する」を参照してください。

RDS for MySQL DB インスタンスと Amazon RDS の外部にある MariaDB や MySQL インスタンスとの間でレプリケーションを設定することもできます。外部ソースとのレプリケーションの設定については、「外部のソースインスタンスを使用したバイナリログファイル位置のレプリケーションの設定」を参照してください。

これらのどのレプリケーションオプションでも、行ベース、ステートメントベース、または混合レプリケーションが使用できます。行ベースのレプリケーションは、SQL ステートメントの結果として変更された行のみをレプリケートします。ステートメントベースのレプリケーションは、SQL ステートメント全体をレプリケートします。混合レプリケーションは、可能な場合にはステートメントレプリケーションを使用しますが、ステートメントベースのレプリケーションに対して安全でない SQL ステートメントが実行されると、行ベースのレプリケーションに切り替えます。ほとんどの場合には、混合レプリケーションをお勧めします。DB インスタンスのバイナリログ形式は、レプリケーションが行ベース、ステートメントベース、混合のいずれであるかを判断します。バイナリログ形式の設定については、「RDS for MySQL バイナリログの設定」を参照してください。

注記

Amazon RDS の外部にある MariaDB または MySQL インスタンスからデータベースをインポートしたり、これらのインスタンスにデータベースをエクスポートするようレプリケーションを設定できます。詳細については、「ダウンタイムを短縮して Amazon RDS MariaDB または MySQL データベースにデータをインポートする」および「レプリケーションを使用した MySQL DB インスタンスからのデータのエクスポート」を参照してください。