翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
をセットアップするための完全な前提条件 AWS Database Migration Service
このセクションでは、ソースデータベースとターゲットデータベースの設定など AWS DMS、 の前提条件タスクについて説明します。これらのタスクの一環として、Amazon VPCサービスに基づいて仮想プライベートクラウド (VPC) をセットアップし、リソースを格納します。さらに、ソースデータベースへの入力とターゲットデータベースでのレプリケーションの検証に使用する Amazon EC2インスタンスを設定します。
注記
ソースデータベースへの入力には最大 45 分かかります。
このチュートリアルでは、ソースとして MariaDB データベースを作成し、ターゲットとして PostgreSQL データベースを作成します。このシナリオでは、一般的に使用される低コストのデータベースエンジンを使用して、レプリケーションを実証します。異なるデータベースエンジンを使用すると、異種プラットフォーム間でデータを移行する AWS DMS 機能を示しています。
このチュートリアルのリソースでは、米国西部 (オレゴン) リージョンを使用します。別の AWS リージョンを使用する場合は、米国西部 (オレゴン) が表示される場所ではなく、選択したリージョンを指定します。
注記
簡単にするために、このチュートリアル用に作成するデータベースでは、暗号化やその他のアドバンストセキュリティ機能を使用しません。本番データベースを安全に保つには、セキュリティ機能を使用する必要があります。詳細については、「Amazon のセキュリティRDS」を参照してください。
前提条件のステップについては、以下のトピックをご参照ください。
トピック
VPC の作成
このセクションでは、 AWS リソースを含む VPC を作成します。 AWS リソースを使用する際は、データベース、Amazon EC2インスタンス、セキュリティグループなどを論理的に整理し、安全に保つことがベストプラクティスVPCです。
また、チュートリアルリソースVPCに を使用すると、チュートリアルの完了時に使用するすべてのリソースを確実に削除できます。を削除する前に、 VPCに含まれるすべてのリソースを削除する必要がありますVPC。
で使用する VPC を作成するには AWS DMS
にサインイン AWS Management Console し、 で Amazon VPCコンソールを開きますhttps://console.aws.amazon.com/vpc/
。 ナビゲーションペインで、VPCDashboard を選択し、Create VPCを選択します。
作成VPCページで、次のオプションを入力します。
作成するリソース: VPC など
名前タグの自動生成: [自動生成] を選択して、
DMSVPC
と入力するIPv4 ブロック:
10.0.1.0/24
IPv6 CIDR ブロック: IPv6CIDRブロックなし
テナンシー: デフォルト
アベイラビリティーゾーンの数: 2
パブリックサブネットの数: 2
プライベートサブネットの数: 2
NAT ゲートウェイ ($): なし
VPC エンドポイント: なし
[作成]VPC を選択します。
ナビゲーションペインで、 VPCsを選択します。の VPC ID を書き留めますDMSVPC。
ナビゲーションペインで[Security Groups] (セキュリティグループ) を選択します。
に書き留めた VPC ID と一致する ID を持つ default という名前のグループを選択しますDMSVPC。
[Inbound rules] (インバウンドルール) タブを選択し、[Edit inbound rules] (インバウンドルールの編集) を選択します。
[Add rule] (ルール追加) を選択します。MySQL/Aurora タイプのルールを追加し、ソースに Anywhere-IPv4 を選択します。
[Add rule] (ルールの追加) を選択しなおします。PostgreSQL タイプのルールを追加し、ソースに Anywhere-IPv4 を選択します。
[Save Rules] (ルールの保存) を選択します。
Amazon RDSパラメータグループを作成する
ソースデータベースとターゲットデータベースの設定を指定するには AWS DMS、Amazon RDSパラメータグループを使用します。データベース間の初期および継続的なレプリケーションを許可するには、次の構成を必ず行ってください:
ソースデータベースのバイナリログ。これにより、 AWS DMS はレプリケートする必要がある増分更新を決定できます。
ターゲットデータベースのレプリケーションロール。これにより、 は最初のデータ転送中に外部キーの制約 AWS DMS を無視します。この設定では、 は順不同でデータを移行 AWS DMS できます。
で使用するパラメータグループを作成するには AWS DMS
で Amazon RDSコンソールを開きますhttps://console.aws.amazon.com/rds/
。 ナビゲーションペインで [Parameter groups] (パラメータグループ) を選択します。
[Parameter groups] (パラメータグループ) ページで[Create parameter group] (パラメータグループの作成) を選択します。
[Create parameter group] (パラメータグループ作成) ページで、次の設定を入力します:
パラメータグループファミリー: mariadb10.6
[Group name] (グループ名):
dms-mariadb-parameters
[Description] (説明):
Group for specifying binary log settings for replication
[Create] (作成) を選択します。
パラメータグループページで を選択しdms-mariadb-parameters、dms-mariadb-parametersページで編集を選択します。
次のパラメータを次の値に設定します:
binlog_checksum: NONE
binlog_format: ROW
[Save changes] (変更の保存) をクリックします。
[Parameter groups] (パラメータグループ) ページで[Create parameter group] (パラメータグループの作成) を選択します。
[Create parameter group] (パラメータグループ作成) ページで、次の設定を入力します:
パラメータグループファミリー: postgres13
[Group name] (グループ名):
dms-postgresql-parameters
[Description] (説明):
Group for specifying role setting for replication
[Create] (作成) を選択します。
パラメータグループページで、 を選択しますdms-postgresql-parameters。
dms-postgresql-parameters ページで、編集を選択し、session_replication_role パラメータをレプリカに設定します。session_replication_role のパラメータが、パラメータの最初のページにないことに注意します。このパラメータを見つけるには、ページ割りコントロールまたは検索フィールドを使用します。
[Save changes] (変更の保存) をクリックします。
ソース Amazon RDS データベースを作成する
ソース Amazon RDS データベースを作成するには、次の手順に従います。
ソース Amazon RDS for MariaDB データベースを作成するには
で Amazon RDSコンソールを開きますhttps://console.aws.amazon.com/rds/
。 [Dashboard] (ダッシュボード) ページで[Database] (データベース) セクションの[Create Database] (データベースの作成) を選択します。ページ上部の「マイSQLと Postgre の新しい Amazon RDS マルチ AZ 配置を試SQLす」セクションで「データベースの作成」を選択しないでください。
[Create Database] (データベースの作成) ページで、次の詳細を設定します:
データベース作成方法を選択: [標準作成] を選択する。
エンジンのオプション: [エンジンタイプ] では、[MariaDB] を選択する。[バージョン] は、[MariaDB 10.6.14] が選択されたままにする。
[Templates] (テンプレート): [Dev/Test] (開発/テスト) を選択します。
[Settings] (設定):
[DB instance identifier] (DB インスタンス識別子):
dms-mariadb
を入力します。[認証情報の設定] セクションで、次を入力する。
[Master username] (マスター ユーザーネーム):
admin
のままにしておきます。AWS Secrets Manager のマスター認証情報の管理はオフのままにします。
[Auto generate a password] (パスワードの自動生成): 選択を解除したままにします。
[Master password] (マスターパスワード):
changeit
と入力します。[Confirm password] (パスワードを確認): 再び
changeit
と入力します。
インスタンスの設定:
[DB instance class] (DB インスタンスクラス): [Standard classes] (標準クラス) を選んだままにします。
[DB instance class] (DB インスタンスクラス) でdb.m5.largeを選択します。
[Storage] (ストレージ):
[Enable storage autoscaling] (ストレージのオートスケーリングの有効化) ボックスをクリアします。
残りの設定はそのままにします。
アベイラビリティーおよび耐久性: [スタンバイインスタンスを作成しない] が選択されたままにする。
接続:
コンピューティングリソース Leave Don't connect to an EC2 compute resource
ネットワークタイプ: 選択したままIPv4にします。
仮想プライベートクラウド: DMSVPC-vpc
[Public access] (公開アクセス):[Yes] (はい)。 AWS Schema Conversion Toolを使用するには、公開アクセスを有効にする必要があります。
[Availability zone] (アベイラビリティーゾーン):us-west-2a
残りの設定はそのままにします。
データベース認証: [パスワード認証] が選択されたままにする。
[モニタリング] の [Performance Insights を有効にする] のチェックボックスはオフにする。[その他の設定] セクションを展開して、[拡張モニタリングの有効化] チェックボックスをオフにする。
[Additional configuration] (追加設定) を展開します:
[Database options] (データベースオプション) で[Initial database name] (初期データベース名) として
dms_sample
と入力します。DB パラメータグループで、 を選択しますdms-mariadb-parameters。
[オプショングループ] では、[default:mariadb-10-6] が選択されたままにする。
「バックアップ」 で、次の作業を行います。
[自動バックアップの有効化] はオンのままにする。継続的なレプリケーションをサポートするには、ソースデータベースで自動バックアップが有効になっている必要があります。
[バックアップ保持期間] では、[1 日] を選択する。
[バックアップウィンドウ] では、[指定なし] が選択されたままにする。
[スナップショットにタグをコピー] チェックボックスをオフにする。
別の AWS リージョンでレプリケーションを有効にする はオフのままにします。
[Encryption] (暗号化) で[Enable encryption] (暗号化有効) ボックスをクリアします。
[ログのエクスポート] セクションはそのままにする。
[メンテナンス] の [マイナーバージョン自動アップグレードの有効化] チェックボックスをオフにして、[メンテナンスウィンドウ] 設定を [指定なし] のままにする。
[削除保護の有効化] をオフのままにする。
[データベースの作成] を選択します。
ターゲット Amazon RDS データベースを作成する
前の手順を繰り返して、ターゲット Amazon RDS データベースを作成します。ただし、以下の変更を加えます。
PostgreSQL データベースRDSのターゲットを作成するには
前述の手順のステップ 1 と 2 を繰り返します。
-
[Create database] (データベースの作成) ページで、次の場合を除き、同じオプションを設定します:
エンジンオプションで、PostgreSQL を選択します。
バージョン で、PostgreSQL 13.7-R1 を選択します。
[DB instance identifier] (DB インスタンス識別子) に
dms-postgresql
と入力します。[管理ユーザー名] では
postgres
を選択したままにするDB パラメータグループで、 を選択しますdms-postgresql-parameters。
[Enable automatic backups] (自動バックアップ有効) をクリアします。
[Create database] (データベースの作成) を選択します。
Amazon EC2クライアントを作成する
このセクションでは、Amazon EC2クライアントを作成します。このクライアントを使用して、レプリケートするデータをソースデータベースに入力します。また、このクライアントを使用して、ターゲットデータベースでクエリを実行してレプリケーションを検証します。
Amazon EC2クライアントを使用してデータベースにアクセスすると、インターネット経由でデータベースにアクセスするよりも、次の利点があります。
データベースへのアクセスを、同じ にあるクライアントに制限できますVPC。
このチュートリアルで使用するツールは、このチュートリアルで推奨される Amazon Linux 2023 で動作し、簡単にインストールできることが確認されている。
のコンポーネント間のデータオペレーションは、VPC通常、インターネット経由のデータオペレーションよりもパフォーマンスが向上します。
ソースデータベースに入力するように Amazon EC2クライアントを作成して設定するには
で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/
。 [Dashboard] (ダッシュボード) で、[Launch instance] (インスタンスの起動) を選択します。
[インスタンスを起動] ページで、次の値を入力します。
[名前とタグ] セクションの [名前] には、
DMSClient
と入力する。アプリケーションと OS のイメージ (Amazon マシンイメージ) セクションの設定はそのままにする。
[インスタンスタイプ] セクションで [t2.xlarge] を選択する。
[キーペア (ログイン)] セクションで、[新しいキーペアを作成する] を選択する。
[キーペアの作成] ページで、次のとおり設定する。
キーペア名:
DMSKeyPair
キーペアタイプ: を のままにしますRSA。
プライベートキーファイル形式: MacOS または Linux で OpenSSH の場合は pem、Windows で PuTTY の場合は ppk を選択します。
プロンプトが表示されたら、キーファイルを保存します。
注記
新しい Amazon キーペアを作成するのではなく、既存の Amazon EC2キーペアを使用することもできます。
[ネットワーク設定] セクションで、[編集] をクリックする。以下の設定を選択します。
VPC - 必須: DMSVPC-vpc に記録した ID VPCを持つ を選択しますVPC。
[サブネット]: 最初のパブリックサブネットを選択する。
パブリック IP の自動割り当て: [有効] を選択する。
残りの設定はそのままにして、[インスタンスを起動] をクリックします。
ソースデータベースに挿入する
このセクションでは、後で使用するためのソースデータベースとターゲットデータベースのエンドポイントを検索し、次のツールを使用してソースデータベースに挿入します。
Git、ソースデータベースに入力させるスクリプトをダウンロードします。
MariaDB クライアント。このスクリプトを実行するクライアントです。
エンドポイントを取得する
for MariaDB および RDS for RDS PostgreSQL DB インスタンスのエンドポイントを検索してメモし、後で使用します。
DB インスタンスエンドポイントの検索
にサインイン AWS Management Console し、 で Amazon RDSコンソールを開きますhttps://console.aws.amazon.com/rds/
。 ナビゲーションペインで、[Databases] (データベース) を選択します。
[dms-mariadb] データベースを選択して、データベースの [エンドポイント] の値をメモしておきます。
前のステップをdms-postgresql データベースに対して繰り返します。
ソースデータベースに挿入する
次に、クライアントインスタンスに接続し、必要なソフトウェアをインストールし、Git から AWS サンプルデータベーススクリプトをダウンロードして、スクリプトを実行してソースデータベースを入力します。
ソースデータベースに挿入するには
前の手順で保存したホスト名と公開キーを使用して、クライアントインスタンスに接続します。
Amazon EC2インスタンスへの接続の詳細については、「Amazon EC2ユーザーガイド」の「インスタンスへのアクセス」を参照してください。
注記
Pu を使用している場合はTTY、接続設定ページでTCPキープアライブを有効にして、接続が非アクティブ状態からタイムアウトしないようにします。
Git、MariaDB、Postgre をインストールしますSQL。必要に応じてインストールを確認します。
$ sudo yum install git $ sudo dnf install mariadb105 $ sudo dnf install postgresql15
次のコマンドを実行して、データベース作成スクリプトをダウンロードします GitHub。
git clone https://github.com/aws-samples/aws-database-migration-samples.git
aws-database-migration-samples/mysql/sampledb/v1/
ディレクトリを変更します。以下のコマンドを実行します。前に書き留めたソースRDSインスタンスのエンドポイントを指定します。例:
dms-mariadb.cdv5fbeyiy4e.us-east-1.rds.amazonaws.com
。mysql -h dms-mariadb.
abcdefghij01
.us-east-1.rds.amazonaws.com -P 3306 -u admin -p dms_sample < ~/aws-database-migration-samples/mysql/sampledb/v1/install-rds.sqlデータベース作成スクリプトを実行します。スクリプトは、スキーマを作成してデータを代入するのに最大 45 分かかります。スクリプトが表示するエラーや警告は無視して構いません。