View a markdown version of this page

AWS Database Migration Service を使用した、データベースの Amazon RDS への自動移行 - Amazon Relational Database Service

AWS Database Migration Service を使用した、データベースの Amazon RDS への自動移行

RDS コンソールを使用して、EC2、オンプレミス、またはその他のクラウドプロバイダーインスタンスから RDS にデータベースを移行できます。これには AWS Database Migration Service (AWS DMS) が使用されます。詳細については、「AWS Database Migration Service ユーザーガイド」の「AWS Database Migration Service とは」を参照してください。

移行を開始するには、データの移行先となる同等の RDS DB インスタンスを作成する必要があります。ターゲットデータベースを作成したら、そのデータベースにソースをインポートできます。ソースデータベースが 1TiB 未満の場合、この移行アクションにより、データを RDS に移行するために必要となる時間とリソースが節約されます。

概要

RDS コンソールで、EC2、オンプレミス、またはその他のクラウドプロバイダーのデータベースを同等の RDS データベースに移行できます。コンソールからの移行を有効にするには、RDS データベースを作成する必要があります。

注記

データベースを同等にするには、同じデータベースエンジンおよび互換性のあるエンジンバージョンが必要です。

このアプローチは、次のデータベースエンジンに使用できます。

  • MySQL

  • MariaDB

  • PostgreSQL

この移行プロセスには、以下のステップが含まれます。

  • RDS で同等のデータベースを作成します。次に、ソースとターゲットの間に適切なネットワークを設定します。同じリージョン、アカウント、VPC の EC2 インスタンスの場合、ネットワークのセットアップをスキップできます。詳細については、「AWS Database Migration Service ユーザーガイド」の「ネットワークのセットアップ」を参照してください。データベースを作成する手順については、「Amazon RDS DB インスタンスの作成」を参照してください。

  • データベースのレプリケーションのタイプを選択します。

    • フルロード移行RDS は、ソースデータベース全体をターゲットデータベースにコピーし、必要に応じてターゲットに新しいテーブルを作成します。

      注記

      このオプションにはダウンタイムが必要です。移行プロセス中、ターゲット RDS データベースはアプリケーションで使用できなくなります。

    • フルロードと変更データキャプチャ (CDC) 移行 – フルロード移行と同様に、このオプションでは、RDS はソースデータベース全体をターゲットデータベースにコピーします。ただし、フルロード移行の後は、RDS はソースでキャプチャされた変更をターゲットデータベースに適用します。変更データキャプチャでは、データベースエンジンのネイティブ API を使用してデータベースログへの変更を収集します。

      注記

      このオプションにはダウンタイムが必要です。移行プロセス中、ターゲット RDS データベースはアプリケーションで使用できなくなります。

    • 変更データキャプチャ (CDC) — このオプションを使用すると、移行中もターゲットデータベースを使用できます。RDS は、ソースデータベースの進行中の変更をターゲットデータベースに移行します。

  • RDS は、移行を容易にするために必要なリソースを作成します。RDS が必要なリソースを作成すると、作成されたリソースについて通知が行われ、データ転送を開始できます。

    移行の完了に必要な時間は、レプリケーションのタイプとソースデータベースのサイズによって異なります。

前提条件

  • ネットワークの設定 (同じリージョン、アカウント、VPC 内の EC2 の場合、スキップできます)

  • ソースデータベースとターゲットデータベースの設定

    • MySQL および MariaDB

      ソースデータベースの次の基本的な前提条件に従ってください。

      ターゲットデータベースの次の基本的な前提条件に従ってください。

      さらに、MySQL ソースデータベースから移行する場合、RDS アカウントにレプリケーション管理者ロールが必要です。また、そのロールに適切な権限を適用する必要があります。

    • PostgreSQL

      ソースデータベースの次の前提条件に従ってください。

      ターゲットデータベースの次の前提条件に従ってください。

      注記

      一部の AWS DMS トランザクションでは、DMS エンジンで再度そのパラメータが使用されるまでの間、しばらくアイドル状態になります。PostgreSQL バージョン 9.6 以降で idle_in_transaction_session_timeout パラメータを使用すると、アイドル状態のトランザクションでタイムアウトやエラーが生じる場合があります。

制限事項

自動移行プロセスには、次の制限が適用されます。

  • ソースデータベースの移行を開始するには、ターゲットデータベースのステータスが[使用可能] である必要があります。

  • ソースデータベースは、次のデータベースにのみ移行できます。

    • それはクラスターのメンバーではありません

    • ここに記載されている、サポートされているバージョンの MySQL、PostgreSQL、または MariaDB を使用している

  • DMS の制限事項

注記

基盤となる AWS DMS ツールは、特定の移行シナリオの選択ルールをサポートしていますが、データベースの RDS への自動移行機能はサポートしていません。