Data Transmission Service (DTS) は、自己管理 PostgreSQL および ApsaraDB RDS for PostgreSQL インスタンスの変更追跡タスクの作成をサポートしています。このトピックでは、ApsaraDB RDS for PostgreSQL インスタンスを例に、設定手順を説明します。
前提条件
ソースの ApsaraDB RDS for PostgreSQL インスタンスを作成します。詳細については、「ApsaraDB RDS for PostgreSQL インスタンスの作成」をご参照ください。
説明サポートされているバージョンについては、「変更追跡ソリューションの概要」をご参照ください。
ソースの RDS PostgreSQL インスタンスの `wal_level` パラメーターを `logical` に設定します。詳細については、「インスタンスパラメーターの設定」をご参照ください。
変更追跡インスタンスを実行するための VPC と vSwitch を作成します。
注意事項
タイプ | 説明 |
ソースデータベースの制限 |
|
その他の制限 |
|
特殊なケース | ソースインスタンスが RDS PostgreSQL インスタンスの場合、変更追跡プロセス中に RDS PostgreSQL インスタンスのエンドポイントまたはゾーンを変更しないでください。変更すると、変更追跡タスクは失敗します。 |
操作手順
次のいずれかの方法で [変更追跡タスク] ページに移動し、変更追跡インスタンスが存在するリージョンを選択します。
DTS コンソール
DTS コンソールにログインします。
左側のナビゲーションウィンドウで、[変更追跡] をクリックします。
ページの左上隅で、変更追跡インスタンスが存在するリージョンを選択します。
DMS コンソール
説明実際の操作は、DMS コンソールのモードとレイアウトによって異なる場合があります。詳細については、「シンプルモード」および「DMS コンソールのレイアウトとスタイルのカスタマイズ」をご参照ください。
DMS コンソールにログインします。
上部のナビゲーションバーで、ポインターを に移動します。
[変更追跡タスク] の右側にあるドロップダウンリストから、変更追跡インスタンスが存在するリージョンを選択します。
タスクの作成 をクリックして、タスク設定ページに移動します。
[ソースデータベース] と [コンシューマーネットワークタイプ] セクションでパラメーターを設定します。
警告ソースデータベースインスタンスを指定した後、ページの上部に表示される [制限事項] をお読みになることを推奨します。そうしないと、タスクが失敗したり、追跡されたデータをコンシュームできなくなったりする可能性があります。
カテゴリ
設定
説明
なし
タスク名
変更追跡タスクの名前。DTS はタスクに自動的に名前を割り当てます。タスクを簡単に識別できるような、わかりやすい名前を指定することを推奨します。一意のタスク名を使用する必要はありません。
ソースデータベース
既存の接続情報の選択
DTS に登録されているデータベースインスタンスを使用する場合は、ドロップダウンリストからインスタンスを選択します。DTS は、インスタンスの次のデータベースパラメーターを自動的に入力します。詳細については、「データベース接続の管理」をご参照ください。
説明DMS コンソールでは、[DMS データベースインスタンスの選択] ドロップダウンリストからデータベースインスタンスを選択できます。
DTS へのインスタンスの登録に失敗した場合、または DTS に登録されているインスタンスを使用する必要がない場合は、次のデータベース情報を設定する必要があります。
データベースタイプ
[PostgreSQL] を選択します。
アクセス方法
[Alibaba Cloud インスタンス] を選択します。
インスタンスリージョン
RDS PostgreSQL インスタンスが存在するリージョンを選択します。
Alibaba Cloud アカウント間でデータを複製
Alibaba Cloud アカウント間でデータを追跡するかどうかを指定します。この例では、× が選択されています。
重要Alibaba Cloud アカウント間でクラウドリソースにアクセスする場合は、このパラメーターを ○ に設定し、Alibaba Cloud アカウント と RAM ロール名 パラメーターを指定します。DTS タスクを設定するために使用される Alibaba Cloud アカウントに対して Resource Access Management (RAM) 権限付与を設定する必要があります。RAM 権限付与の設定方法の詳細については、「アカウント間 DTS タスクの RAM 権限付与の設定」をご参照ください。
[インスタンス ID]
RDS PostgreSQL インスタンス ID を選択します。
データベース名
追跡するデータベースの名前を入力します。
データベースアカウント
RDS PostgreSQL インスタンスの特権アカウントを入力します。アカウントは、選択したデータベースのオーナーである必要があります。アカウントの作成と権限の付与の詳細については、「アカウントの作成」および「データベースの作成」をご参照ください。
データベースパスワード
データベースインスタンスへのアクセスに使用するパスワード。
暗号化
ソースデータベースへの接続を暗号化するかどうかを指定します。このパラメーターは、ビジネス要件に基づいて設定できます。この例では、非暗号化 が選択されています。
ソースデータベースへの SSL 暗号化接続を確立する場合は、次の手順を実行します:SSL 暗号化 を選択し、必要に応じて CA 証明書、クライアント証明書、および クライアント証明書の秘密鍵 をアップロードし、次に クライアント証明書の秘密鍵のパスワード を指定します。
説明[暗号化] を SSL 暗号化 に設定した場合、自己管理 PostgreSQL データベースの場合は、CA 証明書 をアップロードする必要があります。
クライアント証明書を使用する場合は、クライアント証明書 と クライアント証明書の秘密鍵 をアップロードし、クライアント証明書の秘密鍵のパスワード を指定する必要があります。
ApsaraDB RDS for PostgreSQL インスタンスの SSL 暗号化の設定方法については、「SSL 暗号化」をご参照ください。
消費者ネットワークタイプ
ネットワークタイプ
[ネットワークタイプ] パラメーターの値は [VPC] に固定されています。[VPC] と [vSwitch] を選択する必要があります。詳細については、「VPC」をご参照ください。
説明変更追跡タスクを設定した後は、[コンシューマーネットワークタイプ] セクションの設定を変更することはできません。
変更追跡クライアントが VPC にデプロイされている場合は、クライアントに接続されているのと同じ [VPC] と [vSwitch] を選択することを推奨します。
内部ネットワーク経由でデータ変更を追跡する場合、ネットワーク遅延は最小限に抑えられます。
ページの下部で、[接続テストと次へ] をクリックします。
説明DTS サーバーからのアクセスを許可するために、DTS サーバーの CIDR ブロックがソースおよびターゲットデータベースのセキュリティ設定に自動または手動で追加できることを確認してください。詳細については、「DTS サーバーの IP アドレスをホワイトリストに追加する」をご参照ください。
ソースデータベースが自己管理データベースで、その [アクセス方法] が [Alibaba Cloud インスタンス] に設定されていない場合は、[DTS サーバーの CIDR ブロック] ダイアログボックスで [接続テスト] をクリックします。
変更追跡のオブジェクトを設定します。
オブジェクト設定 ページで、変更追跡のオブジェクトを設定します。
設定
説明
データ変更タイプ
データ変更タイプ オプションはデフォルトで選択されており、変更できません。
[データ更新]
DTS は、選択したオブジェクトのデータ更新 (INSERT、DELETE、UPDATE 操作を含む) を追跡します。
[スキーマ更新]
DTS は、ソースインスタンスのすべてのオブジェクトスキーマに対して実行される作成、削除、変更操作を追跡します。追跡するデータは、変更追跡クライアントを使用してフィルター処理する必要があります。
説明[スキーマ更新] を追跡するには、ソースデータベースにトリガーと関数を作成して DDL 情報をキャプチャします。詳細については、「トリガーと関数を使用した PostgreSQL の増分 DDL 移行の実装」をご参照ください。
ソースオブジェクト
[ソースオブジェクト] セクションから 1 つ以上のオブジェクトを選択し、
アイコンをクリックしてオブジェクトを [選択したオブジェクト] セクションに追加します。説明変更追跡のオブジェクトとして、テーブルまたはデータベースを選択できます。
オブジェクトとしてデータベースを選択した場合、DTS はデータベース内の新しいオブジェクトを含むすべてのオブジェクトの増分データを追跡します。
オブジェクトとしてテーブルを選択した場合、DTS はこのテーブルの増分データのみを追跡します。この場合、別のテーブルのデータ変更を追跡するには、そのテーブルをオブジェクトリストに追加する必要があります。詳細については、「変更追跡のオブジェクトの変更」をご参照ください。
詳細設定へ をクリックして、高度な設定を行います。
設定
説明
タスクのスケジュールに使用する専用クラスターの選択
デフォルトでは、DTS はタスクを共有クラスターにスケジュールします。このパラメーターを設定する必要はありません。指定した仕様の専用クラスターを購入して、DTS 変更追跡タスクを実行できます。詳細については、「DTS 専用クラスターとは」をご参照ください。
失敗した接続の再試行時間
接続失敗時のリトライ時間範囲。変更追跡タスクが失敗した場合、DTS は時間範囲内ですぐに接続をリトライします。有効な値:10~1440。単位:分。デフォルト値:720。このパラメーターは 30 より大きい値に設定することを推奨します。指定した時間範囲内に DTS がソースデータベースインスタンスに再接続されると、DTS は変更追跡タスクを再開します。そうでない場合、変更追跡タスクは失敗します。
説明データベースインスタンスに複数の変更追跡タスクが設定されている場合、最も短いリトライ時間範囲が優先されます。たとえば、同じデータベースインスタンスに対してタスク A とタスク B が設定されているとします。タスク A のリトライ時間範囲が 30 分、タスク B のリトライ時間範囲が 60 分の場合、30 分のリトライ時間範囲が優先されます。
DTS が接続をリトライすると、料金が発生します。ビジネス要件に基づいてリトライ時間範囲を指定するか、ソースデータベースインスタンスがリリースされた後、できるだけ早く DTS インスタンスをリリースすることを推奨します。
移行元データベースと移行先データベースで他の問題が発生した場合の、再試行までの待機時間です。
その他の問題のリトライ時間範囲。たとえば、変更追跡タスクの開始後に DDL または DML 操作の実行に失敗した場合、DTS はリトライ時間範囲内にすぐに操作をリトライします。有効な値:1~1440。単位:分。デフォルト値:10。このパラメーターは 10 より大きい値に設定することを推奨します。指定したリトライ時間範囲内に失敗した操作が正常に実行されると、DTS は変更追跡タスクを再開します。そうでない場合、変更追跡タスクは失敗します。
重要移行元データベースと移行先データベースで他の問題が発生した場合の、再試行までの待機時間です。 パラメーターの値は、失敗した接続の再試行時間 パラメーターの値より小さくする必要があります。
環境タグ
必要に応じて、インスタンスを識別するための環境タグを選択します。この例では、環境タグは選択されていません。
監視アラート
変更追跡タスクのアラートを有効にするかどうかを指定します。アラートが設定されていて、タスクが失敗したり、遅延がしきい値を超えたりすると、アラート通知が送信されます。有効な値:
[いいえ]:アラートを有効にしません。
[はい]:アラートを有効にします。この場合、アラートのしきい値とアラート通知設定も設定する必要があります。詳細については、「DTS タスク作成時のモニタリングとアラートの設定」をご参照ください。
ページの下部で、[次へ:タスク設定を保存して事前チェック] をクリックします。
関連する API 操作を呼び出して DTS タスクを設定する際に指定するパラメーターを表示するには、次:タスク設定の保存と事前チェック にポインターを移動し、OpenAPI パラメーターのプレビュー をクリックします。
パラメーターを表示する必要がない場合、または表示済みの場合は、ページ下部の 次:タスク設定の保存と事前チェック をクリックします。
説明変更追跡タスクを開始する前に、DTS は事前チェックを実行します。タスクが事前チェックに合格した後にのみ、変更追跡タスクを開始できます。
タスクが事前チェックに合格しなかった場合は、失敗した各項目の横にある [詳細の表示] をクリックします。エラーメッセージに基づいて問題をトラブルシューティングした後、再度事前チェックを実行できます。
事前チェック中に項目に対してアラートが生成された場合は、シナリオに基づいて次の操作を実行します:
アラート項目を無視できない場合は、失敗した項目の横にある [詳細の表示] をクリックして問題をトラブルシューティングします。その後、再度事前チェックを実行します。
アラート項目を無視できる場合は、[アラート詳細の確認] をクリックします。[詳細の表示] ダイアログボックスで、[無視] をクリックします。表示されるメッセージで [OK] をクリックします。次に、[再事前チェック] をクリックして再度事前チェックを実行します。アラート項目を無視すると、データの不整合が発生し、ビジネスが潜在的なリスクにさらされる可能性があります。
インスタンスの購入
[成功率] が [100%] になるまで待ってから、[次へ:インスタンスの購入] をクリックします。
[購入] ページで、変更追跡インスタンスの課金方法を指定します。次の表にパラメーターを説明します。
パラメーター
説明
課金方法
サブスクリプション:インスタンス作成時にサブスクリプション料金を支払います。サブスクリプション課金方法は、長期利用の場合、従量課金よりも費用対効果が高くなります。サブスクリプション期間が長いほど、料金は安くなります。
従量課金:従量課金インスタンスは時間単位で課金されます。短期利用の場合は、従量課金を選択することを推奨します。従量課金インスタンスが不要になった場合は、インスタンスをリリースしてコストを削減できます。
リソースグループ設定
インスタンスが属するリソースグループ。デフォルト値:[デフォルトリソースグループ]。詳細については、「Resource Management とは」をご参照ください。
サブスクリプション期間
サブスクリプション課金方法を選択した場合は、サブスクリプション期間と作成するインスタンスの数を設定します。サブスクリプション期間は、1~9 か月、1 年、2 年、3 年、または 5 年です。
説明このパラメーターは、[サブスクリプション] 課金方法を選択した場合にのみ使用できます。
[Data Transmission Service (従量課金) 利用規約] を読み、選択します。
[購入して開始] をクリックして、変更追跡タスクを開始します。タスクリストでタスクの進行状況を確認できます。
次のステップ
変更追跡タスクが実行中の場合、ダウンストリームクライアントに基づいてコンシューマーグループを作成し、追跡されたデータをコンシュームできます。
コンシューマーグループの作成と管理の詳細については、「コンシューマーグループの作成」をご参照ください。
次のいずれかの方法を使用して、追跡されたデータをコンシュームします:
