

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# での同種データ移行のターゲットとしての PostgreSQL データベースの使用 AWS DMS
<a name="dm-data-providers-target-postgresql"></a>

 AWS DMSでの同種データ移行の移行ターゲットとして、PostgreSQL 互換データベースを使用できます。

AWS DMS では、ターゲット Amazon RDS for PostgreSQL または Amazon Aurora PostgreSQL データベースにデータを移行するための特定のアクセス許可が必要です。次のスクリプトを使用して、ターゲットの PostgreSQL データベースで必要な権限を持つデータベースユーザーを作成します。

```
CREATE USER your_user WITH LOGIN PASSWORD 'your_password';
GRANT USAGE ON SCHEMA schema_name TO your_user;
GRANT CONNECT ON DATABASE db_name to your_user;
GRANT CREATE ON DATABASE db_name TO your_user;
GRANT CREATE ON SCHEMA schema_name TO your_user;
GRANT UPDATE, INSERT, SELECT, DELETE, TRUNCATE ON ALL TABLES IN SCHEMA schema_name TO your_user;
            #For "Full load and change data capture (CDC)" and "Change data capture (CDC)" data migrations, setting up logical replication requires rds_superuser privileges
GRANT rds_superuser TO your_user;
```

上記の例の各 *user input placeholder* は独自の情報に置き換えます。

RDS for PostgreSQL のターゲットの論理レプリケーションを有効にするには、DB パラメータグループの `rds.logical_replication` パラメータを 1 に設定します。この静的パラメータを有効にするには、DB インスタンスまたは DB クラスターを再起動する必要があります。一部のパラメータは静的であり、サーバーの開始時にのみ設定できます。 は、サーバーを再起動するまで DB パラメータグループのエントリの変更 AWS DMS を無視します。

PostgreSQL はトリガーを使用して外部キーの制約を実装します。全ロードフェーズ中、 は各テーブルを一度に 1 つずつ AWS DMS ロードします。フルロード中は、ターゲットデータベースの外部キー制約をオフにすることをお勧めします。これには、次のいずれかの方法を使用します。
+ インスタンスのすべてのトリガーを一時的にオフにして、フルロードを終了する。
+ PostgreSQL で `session_replication_role` パラメータの値を変更する。

  特定の時間において、トリガーは `origin`、`replica`、`always`、または `disabled` のいずれかの状態になります。`session_replication_role` パラメータを `replica` と設定すると、`replica` の状態のトリガーのみがアクティブになります。それ以外の場合、トリガーは非アクティブなままです。

## MySQL 互換データベースを同種データ移行のターゲットとして使用する場合の制限
<a name="dm-data-providers-target-postgresql-limitations"></a>

PostgreSQL 互換データベースを同種データ移行のターゲットとして使用する場合、次の制限が適用されます。
+ データソースへの接続に使用するユーザー名には以下の制限があります。
  + 2～64 文字を使用できます。
  + スペースは使用できません。
  + 文字として a～z、A～Z、0～9、アンダースコア (\$1) を使用できます。
  + a～z または A～Z で始める必要があります。
+ データソースへの接続に使用するパスワードには以下の制限があります。
  + 1～128 文字を使用できます。
  + 一重引用符 (')、二重引用符 (")、セミコロン (;)、スペースのいずれも使用できません。