Amazon RDS for MariaDB または MySQL DB インスタンスのリードレプリカに書き込み操作を実行する方法を教えてください。

最終更新日: 2019 年 12 月 11 日

Amazon Relational Database Service (Amazon RDS) for MariaDB または MySQL DB インスタンスのリードレプリカで、読み込みと書き込みの操作を実行する必要があるのですが、どうすればよいですか?

簡単な説明

Amazon RDS DB インスタンスのリードレプリカは、読み込み専用として設計されています。シナリオによっては、レプリカを変更できるよう DB インスタンスのリードレプリカを設定する必要があります。

解決方法

Amazon RDS for MySQL または MariaDB を使用している場合、DB インスタンスのリードレプリカを読み書きできるように設定するには、DB インスタンスに関連付けられている DB パラメータグループに対して read_only パラメータを false に設定します。read_only パラメータは、Amazon Aurora などの他の Amazon RDS エンジンを使用する場合には変更できません。

Amazon RDS DB インスタンスのリードレプリカを読み書きできるように設定するには、以下の手順に従ってください。

  1. MySQL または MariaDB インスタンスの DB パラメータグループを作成します。
  2. パラメータグループを変更します。
  3. RDS DB インスタンスを DB パラメータグループに関連付けます。

注: DB パラメータグループを指定せずに DB インスタンスを作成すると、デフォルトの DB パラメータグループが作成され、デフォルトのパラメータグループを変更できません。インスタンスに関連付けられているカスタムパラメータグループがすでにある場合は、新しいパラメータグループを作成する必要はありません。DB パラメータグループの詳細については、「DB パラメータグループを使用する」をご参照ください。

DB パラメータグループを作成する

  1. Amazon RDS コンソールを開きます。
  2. ナビゲーションペインの [Parameter groups] から、[Create parameter group] を選択します。
  3. [Parameter group family] でパラメータグループファミリーを選択します。
  4. [Type] で [ DB Parameter Group] をクリックします。
  5. [Group name] に新しい DB パラメータグループの名前を入力します。
  6. [Description] に新しい DB パラメータグループの説明を入力します。
  7. [Create] をクリックします。

パラメータグループを変更する

  1. Amazon RDS コンソールを開きます。
  2. ナビゲーションペインの [Parameter groups] から、変更するパラメータグループを選択します。
  3. [Parameter group actions] を選択し、次に [Edit] をクリックします。
  4. 次のパラメータを編集します。read_only=0
  5. [Save changes] をクリックします。

RDS DB インスタンスを DB パラメータグループに関連付ける

  1. Amazon RDS コンソールを開きます。
  2. ナビゲーションペインの [Databases] から、変更した DB パラメータグループに関連付ける DB インスタンスを選択します。
  3. [Modify] をクリックします。
    注: インスタンスのステータスは [Modifying] で、パラメータグループは [Applying] です。
  4. [Database options] から DB インスタンスに関連付けるパラメータグループを選択します。
  5. インスタンスのステータスが Available になり、パラメータグループが Pending-reboot になったら、フェイルオーバーなしでインスタンスを再起動します。
    注: パラメータグループ名は即時に変更されますが、パラメータの変更はフェイルオーバーなしでインスタンスを再起動するまで適用されません。