

# AWS Database Migration Service を使用した、データベースの Amazon Aurora への自動移行
<a name="USER_DMS_migration"></a>

Aurora コンソールを使用して、EC2、オンプレミス、またはその他のクラウドプロバイダーインスタンスから Aurora にデータベースを移行できます。これには AWS Database Migration Service (AWS DMS) が使用されます。詳細については、「*AWS Database Migration Service ユーザーガイド*」の「[AWS Database Migration Service とは](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html)」を参照してください。

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

## 概要
<a name="USER_DMS_migration-overview"></a>

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

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

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

この移行プロセスには、以下のステップが含まれます。
+ Aurora で同等のデータベースを作成します。次に、ソースとターゲットの間に適切なネットワークを設定します。同じリージョン、アカウント、VPC の EC2 インスタンスの場合、ネットワークのセットアップをスキップできます。詳細については、「*AWS Database Migration Service ユーザーガイド*」の「[ネットワークのセットアップ](https://docs.aws.amazon.com/dms/latest/userguide/dm-network.html)」を参照してください。データベースを作成する手順については、「[Amazon Aurora DB クラスターの作成](Aurora.CreateInstance.md)」を参照してください。
+ データベースのレプリケーションのタイプを選択します。
  + **フルロード移行** – Aurora は、ソースデータベース全体をターゲットデータベースにコピーし、必要に応じてターゲットに新しいテーブルを作成します。
**注記**  
このオプションにはダウンタイムが必要です。移行プロセス中、ターゲット Aurora データベースはアプリケーションで使用できなくなります。
  + **フルロードと変更データキャプチャ (CDC) 移行** – フルロード移行と同様に、このオプションでは、Aurora はソースデータベース全体をターゲットデータベースにコピーします。ただし、フルロード移行の後は、Aurora はソースでキャプチャされた変更をターゲットデータベースに適用します。変更データキャプチャでは、データベースエンジンのネイティブ API を使用してデータベースログへの変更を収集します。
**注記**  
このオプションにはダウンタイムが必要です。移行プロセス中、ターゲット Aurora データベースはアプリケーションで使用できなくなります。
  + **変更データキャプチャ (CDC)** — このオプションを使用すると、移行中もターゲットデータベースを使用できます。Aurora は、ソースデータベースの進行中の変更をターゲットデータベースに移行します。
+ Aurora は、移行を容易にするために必要なリソースを作成します。Aurora が必要なリソースを作成すると、作成されたリソースについて通知が行われ、データ転送を開始できます。

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

## 前提条件
<a name="USER_DMS_migration-Prerequisites"></a>
+ [ネットワークの設定](https://docs.aws.amazon.com/dms/latest/userguide/dm-network.html) (同じリージョン、アカウント、VPC 内の EC2 の場合、スキップできます)
+ ソースデータベースとターゲットデータベースの設定
  + **MySQL**

    ソースデータベースの次の基本的な前提条件に従ってください。
    + [MySQL をソースとして使用する](https://docs.aws.amazon.com/dms/latest/userguide/dm-data-providers-source-mysql.html)

    ターゲットデータベースの次の基本的な前提条件に従ってください。
    + [MySQL をターゲットとして使用する](https://docs.aws.amazon.com/dms/latest/userguide/dm-data-providers-target-mysql.html)

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

    ソースデータベースの次の前提条件に従ってください。
    + [PostgreSQL のソースとしての使用](https://docs.aws.amazon.com/dms/latest/userguide/dm-data-providers-source-postgresql.html)

    ターゲットデータベースの次の前提条件に従ってください。
    + [ターゲットとしての PostgreSQL の使用](https://docs.aws.amazon.com/dms/latest/userguide/dm-data-providers-target-postgresql.html)
**注記**  
一部の AWS DMS トランザクションでは、DMS エンジンで再度そのパラメータが使用されるまでの間、しばらくアイドル状態になります。PostgreSQL バージョン 9.6 以降で `idle_in_transaction_session_timeout` パラメータを使用すると、アイドル状態のトランザクションでタイムアウトやエラーが生じる場合があります。

## 制限事項
<a name="USER_DMS_migration-Limitations"></a>

自動移行プロセスには、次の制限が適用されます。
+ ソースデータベースの移行を開始するには、ターゲットデータベースのステータスが**[使用可能]** である必要があります。
+ ソースデータベースは、次のデータベースにのみ移行できます。
  + 以下のいずれでもありません。
    + Aurora global database
    + Aurora Limitless database
    + Aurora Serverless v1
  + [ここ](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Introduction.Sources.html#CHAP_Introduction.Sources.HomogeneousDataMigrations)に記載されている、サポートされているバージョンの MySQL または PostgreSQL を使用している
+ [DMS の制限事項](https://docs.aws.amazon.com/dms/latest/userguide/data-migrations.html#data-migrations-limitations)

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