EC2上にある大規模なPostgreSQL DB(約100GB)があります。 RDSに移行したい。
最小限のダウンタイムでこれをどのように達成できますか?
最小限のダウンタイムでそれを行うことはできません。
RDSは、ベースバックアップのインポートおよび外部サーバーとのストリーミングレプリケーションの実行をサポートしていません。
AWS RDSからWALを取得する および Amazon RDSへのスタンドアロンDBの移動 を参照してください。
ダンプしてリロードする必要があります。
熱心な場合は、代わりにLondisteまたは同様のツールを設定して、スタンドアロンサーバーからRDSに変更をストリーミングし、Londiste pgqデーモンとサブスクライバーデーモンをAWS EC2で実行することができます。サブスクライバーは、PostgreSQLプロトコルを介してRDSにリモート接続します。これにより、トリガーベースのレプリケーションを使用してDBの同期を保つことができ、停止時間を短縮できます。ただし、古いDBへの書き込みを無効にして、切り替え前にLondisteが完全に追いついていることを確認する必要があります。