web-dev-qa-db-ja.com

RDSデータベースを別のVPCに移動する方法

MySQL RDSデータベースを作成するときにVPCを選択しなかったため、自動生成された「デフォルト」VPC内に作成しました。事前定義されたセキュリティグループに追加したり、既存のVPCのインスタンスからアクセスしたりできなくなりました。明らかな解決策は、適切なVPCに再配置することですが、[Modify db instance]画面でVPCを編集するオプションはないようです。別のVPCを選択する方法はありますか、またはdbを削除して正しいVPC内に再作成する唯一のオプションですか?

11
Cerin

Amazonは最近 プレスリリース を発行し、既存のRDSインスタンスのVPCを変更できるようになったことを発表しました。

Amazon RDS DBインスタンスで使用されるAmazon Virtual Private Cloud(Amazon VPC)を簡単に変更できるようになりました。 Amazon RDS管理コンソール、Amazon RDS API、またはAWSコマンドラインツールを使用して、シングルAZ構成でデプロイされた既存のDBインスタンスに新しいVPCを指定できます。さらに、EC2-Classic環境でDBインスタンスを実行している場合は、既存のDBインスタンスを変更することでEC2-VPC環境に切り替えることができます。 2013-12-04より前にAWSアカウントが作成された場合、EC2-Classic環境でRDSを実行している可能性があります。

この機能は、Amazon RDSでサポートされているすべてのリージョンで使用でき、MySQL、MariaDB、Microsoft SQL Server、Oracle、PostgreSQLのサポートされているすべてのバージョンで使用できます。

この機能は、シングルAZ配置で実行されているDBインスタンスでのみサポートされていることに注意してください。マルチAZ配置でDBインスタンスのVPC環境を変更する場合は、インスタンスを一時的にシングルAZ配置に変更し、EC2-VPC環境に変更した後でマルチAZを再度有効にすることができます。 。

12

シンプル-現在のRDSインスタンスのスナップショットを取り、そのスナップショットをVPCの新しいインスタンスに復元します。

10
EEAA

新しいVPCに移行する際のダウンタイムを回避するには、元のRDSクラスターのマルチAZ DBインスタンスをセットアップして、 スナップショットの作成 が短時間のI/O一時停止を引き起こさないようにする必要があります。新しいVPCにスナップショットをロードするときにデータベース間でレプリケーションを設定して、スナップショットの作成後に挿入または更新された可能性のあるデータを復元できるように、クラスターでバイナリログも有効にする必要があります。

これに従います ガイド RDSドキュメントから

編集

RDS Auroraでこれを行う必要があり、上記のガイドに若干の変更を加える必要がありました。

  • Auroraスナップショットから復元する場合、パラメーターグループを設定できないため、インスタンスはデフォルトのパラメーターを自動的に取得します。インスタンスが使用可能になったら、パラメーターを変更してバイナリー・ロギングを含め、再起動します。

  • ランニング SHOW MASTER STATUS\Gは、スナップショットが作成されたときの正しいバイナリログファイルと元のデータベースの位置を提供しません。インスタンスを再起動すると、新しいバイナリログファイルが作成されました。代わりにSHOW BINARY LOGS;は、以前のログファイルとfile_sizeを検索し、レプリケーションのセットアップ時にそれらの値を使用します。

3
MarkAWard