すべてのプロダクト
Search
ドキュメントセンター

Data Transmission Service:PolarDB for PostgreSQL (Oracle 互換) クラスター間のデータ移行

最終更新日:Mar 06, 2026

Data Transmission Service (DTS) を使用して、PolarDB for PostgreSQL (Oracle 互換) クラスター間でデータを移行できます。

前提条件

  • ソースおよびターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターを作成済みであること。詳細については、「PolarDB for PostgreSQL (Oracle 互換) クラスターの作成」をご参照ください。

  • ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターで、wal_level パラメーターを logical に設定していること。これにより、論理レプリケーションに必要な情報が先行書き込みログ (WAL) に追加されます。詳細については、「クラスターパラメーターの設定」をご参照ください。

注意事項

説明

タイプ

説明

ソースデータベースの制限事項

  • 帯域幅要件:ソースデータベースをホストするサーバーには、十分なアウトバウンド帯域幅が必要です。そうでない場合、データ移行速度に影響が出ます。

  • 移行対象のテーブルには、プライマリキーまたは一意性制約が必要であり、フィールドは一意である必要があります。そうでない場合、ターゲットデータベースに重複データが存在する可能性があります。

  • テーブルレベルでデータを移行し、列名のマッピングなどのテーブル編集が必要な場合、1 つのデータ移行タスクでサポートされるテーブルは最大 1,000 です。この制限を超えると、タスク送信時にエラーが報告されます。この場合、テーブルを複数の移行タスクに分割するか、データベース全体を移行するタスクを設定してください。

  • 増分移行を実行する場合、先行書き込みログ (WAL) に関して以下の点にご注意ください:

    • WAL を有効にする必要があります。

    • 増分移行タスクの場合、DTS はソースデータベースの WAL を 24 時間以上保持することを要求します。完全移行と増分移行の両方を含むタスクの場合、DTS は WAL を少なくとも 7 日間保持することを要求します。完全移行が完了した後、ログの保持期間を 24 時間以上に設定できます。WAL が要求された期間保持されない場合、DTS が WAL を取得できないため、DTS タスクが失敗する可能性があります。極端なケースでは、データ不整合やデータ損失が発生する可能性があります。要求された期間より短い WAL 保持期間に起因する問題は、DTS のサービスレベルアグリーメント (SLA) の対象外です。

  • ソースデータベース操作の制限事項:

    • スキーマ移行および完全データ移行中は、データベースまたはテーブルの構造を変更する DDL 操作を実行しないでください。そうしないと、データ移行タスクが失敗します。

    • 完全データ移行のみを実行する場合、ソースインスタンスに新しいデータを書き込まないでください。そうしないと、ソースデータベースとターゲットデータベース間でデータ不整合が発生します。リアルタイムのデータ整合性を維持するには、スキーマ移行、完全データ移行、および増分データ移行を選択してください。

    • 移行タスクが期待どおりに実行され、フェールオーバーによって論理レプリケーションが中断されるのを防ぐために、PolarDB for PostgreSQL (Oracle 互換)論理レプリケーションスロットのフェールオーバーをサポートし、有効にする必要があります。

      説明

      ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターが論理レプリケーションスロットのフェールオーバーをサポートしていない場合 (たとえば、データベースエンジンOracle 構文互換 2.0 の場合)、ソースデータベースでのフェールオーバーにより、移行インスタンスが失敗し、回復不能になる可能性があります。

    • ソースデータベースの論理レプリケーションの固有の制限により、増分変更後に移行される単一のデータが 256 MB を超える場合、移行インスタンスが失敗し、回復不能になる可能性があります。移行インスタンスを再設定する必要があります。

  • ソースデータベースに長時間トランザクションがあり、インスタンスが増分移行を実行する場合、トランザクションコミット前の WAL が蓄積され、クリアできなくなることがあります。これにより、ソースデータベースのディスク領域が不足する可能性があります。

その他の制限事項

  • 1 つのデータ移行タスクで移行できるデータベースは 1 つだけです。複数のデータベースを移行するには、データベースごとに個別のデータ移行タスクを設定してください。

  • DTS は、TimescaleDB 拡張テーブル、スキーマ間継承を持つテーブル、または式に基づく一意なインデックスを持つテーブルの移行をサポートしていません。

  • 拡張機能をインストールして作成されたスキーマは、移行の対象外です。タスクを設定する際に、コンソールでこれらのスキーマに関する情報を取得することはできません。

  • 移行対象のテーブルに SERIAL 型のフィールドが含まれている場合、ソースデータベースはそのフィールドに対して自動的にシーケンスを作成します。したがって、ソースオブジェクト を設定する際に、移行タイプスキーマ移行 を選択した場合、シーケンスも選択するか、スキーマ全体を移行することを推奨します。そうしないと、移行インスタンスが失敗する可能性があります。

  • 移行インスタンスに増分データ移行タスクが含まれている場合、データを書き込む前に、ソースデータベースの移行対象テーブルに対して ALTER TABLE schema.table REPLICA IDENTITY FULL; コマンドを実行する必要があります。これにより、データ整合性が確保されます。このコマンドは、以下のシナリオで実行してください。このコマンドの実行中は、デッドロックを避けるためにテーブルロック操作を実行しないでください。事前チェックで関連するチェックをスキップした場合、DTS はインスタンスの初期化中にこのコマンドを自動的に実行します。

    • インスタンスが初めて実行されるとき。

    • 移行オブジェクトがスキーマであり、スキーマ内に新しいテーブルが作成されるか、RENAME コマンドを使用して既存のテーブルが再構築されるとき。

    説明
    • コマンド内の schematable は、実際のスキーマ名とテーブル名に置き換えてください。

    • この操作はオフピーク時間に行うことを推奨します。

  • DTS は、増分データの DDL 文、増分テーブルの構造、およびハートビート情報を取得するために、ソースデータベースに以下の一時テーブルを作成します。移行中にこれらの一時テーブルを削除しないでください。そうしないと、DTS タスクが異常になります。一時テーブルは、DTS インスタンスがリリースされた後に自動的に削除されます。

    public.dts_pg_classpublic.dts_pg_attributepublic.dts_pg_typepublic.dts_pg_enumpublic.dts_postgres_heartbeatpublic.dts_ddl_commandpublic.dts_args_session、および public.aliyun_dts_instance

  • 増分データの移行遅延を正確に表示するために、DTS はソースデータベースに dts_postgres_heartbeat という名前のハートビートテーブルを追加します。

  • 増分データ移行中、DTS はデータをレプリケーションするために、ソースデータベースに dts_sync_ というプレフィックスを持つレプリケーションスロットを作成します。DTS はこのレプリケーションスロットを使用して、過去 15 分以内のソースデータベースから増分ログを取得します。データ移行が失敗した場合や移行インスタンスがリリースされた場合、DTS はこのレプリケーションスロットを自動的にクリーンアップしようとします。

    説明
    • データ移行中にソースデータベースアカウントのパスワードを変更したり、ソースデータベースの IP アドレスホワイトリストから DTS の IP アドレスを削除したりすると、レプリケーションスロットは自動的にクリーンアップされません。この場合、ソースデータベースでレプリケーションスロットを手動でクリーンアップする必要があります。これにより、スロットが継続的に蓄積されてディスク領域を消費し、ソースデータベースが利用できなくなるのを防ぎます。

    • ソースデータベースでフェールオーバーが発生した場合、セカンダリデータベースにログインしてスロットを手動でクリーンアップする必要があります。

  • データを移行する前に、ソースデータベースとターゲットデータベースのパフォーマンスを評価してください。データ移行はオフピーク時間に行ってください。そうしないと、DTS は完全データ移行中にソースデータベースとターゲットデータベースの読み取りおよび書き込みリソースの一部を消費し、データベースの負荷が増加する可能性があります。

  • 完全データ移行は同時 INSERT 操作を実行するため、ターゲットデータベースでテーブルの断片化が発生します。完全移行が完了した後、ターゲットデータベースのテーブルストレージ領域はソースインスタンスよりも大きくなります。

  • DTS が FLOAT または DOUBLE データ型の列に使用する移行精度がビジネス要件を満たしているか確認してください。DTS は ROUND(COLUMN,PRECISION) を使用してこれらの列の値を読み取ります。精度が明示的に定義されていない場合、DTS は FLOAT を 38 桁の精度で、DOUBLE を 308 桁の精度で移行します。

  • DTS は、失敗した移行タスクを 7 日以内に回復しようとします。ビジネスをターゲットインスタンスに切り替える前に、タスクを終了またはリリースするか、revoke コマンドを使用して DTS がターゲットインスタンスにアクセスするために使用するアカウントの書き込み権限を取り消してください。これにより、タスクが自動的に回復された後、ソースデータがターゲットインスタンスのデータを上書きするのを防ぎます。

  • DTS はデータ内容を検証しますが、シーケンスなどのメタデータの検証はサポートしていません。メタデータはご自身で検証する必要があります。

  • ターゲットデータベースへのサービス切り替え後、新しいシーケンスはソースデータベースの最大シーケンス値から増分を開始しません。切り替え前にターゲットデータベースのシーケンス値を更新する必要があります。詳細については、「ターゲットデータベースのシーケンス値の更新」をご参照ください。

  • 完全移行または増分移行タスクで、ソースデータベースの移行対象テーブルに外部キー、トリガー、またはイベントトリガーが含まれている場合、ターゲットデータベースアカウントが特権アカウントであるか、スーパーユーザー権限を持っている場合、DTS はセッションレベルで session_replication_role パラメーターを一時的に replica に設定します。ターゲットデータベースアカウントがこれらの権限を持っていない場合は、ターゲットデータベースで session_replication_role パラメーターを手動で replica に設定する必要があります。この期間中 (session_replication_role が replica のとき)、ソースデータベースでカスケード更新または削除操作が発生すると、データ不整合が発生する可能性があります。DTS 移行タスクがリリースされた後、session_replication_role パラメーターを origin に戻すことができます。

  • タスクが失敗した場合、DTS のサポートスタッフは 8 時間以内に復旧を試みます。復旧中、タスクを再起動したり、パラメーターを調整したりすることがあります。

    説明

    変更されるのは DTS タスクのパラメーターのみで、データベースのパラメーターは変更されません。調整される可能性のあるパラメーターには、「インスタンスパラメーターの変更」に記載されているものが含まれます。

  • パーティションテーブルを移行する場合、親テーブルとその子パーティションの両方を同期オブジェクトとして含めてください。そうしないと、パーティションテーブルでデータ不整合が発生する可能性があります。

    説明

    PolarDB for PostgreSQL (Oracle 互換) のパーティションテーブルの親テーブルは、直接データを保存しません。すべてのデータは子パーティションに保存されます。同期タスクには、親テーブルとそのすべての子パーティションを含める必要があります。そうしないと、子パーティションのデータが欠落し、ソースとターゲット間でデータ不整合が発生する可能性があります。

課金

移行タイプ

インスタンス構成料金

インターネットトラフィック料金

スキーマ移行と完全データ移行

無料。

ターゲットデータベースの アクセス方法 パラメーターが パブリック IP アドレス に設定されている場合、インターネットトラフィック料金が課金されます。詳細については、「課金の概要」をご参照ください。

増分データ移行

課金されます。詳細については、「課金の概要」をご参照ください。

移行タイプ

移行タイプ

説明

スキーマ移行

DTS は、オブジェクトのスキーマ定義をターゲットデータベースに移行します。DTS は、テーブル、ビュー、シノニム、トリガー、ストアドプロシージャ、ストアドファンクション、パッケージ、カスタム型などのオブジェクトをサポートします。

説明

トリガーは現在互換性がありません。データ不整合を避けるために、ソースデータベースのトリガーを削除することを推奨します。詳細については、「ソースデータベースにトリガーが含まれている場合の同期または移行ジョブの設定方法」をご参照ください。

完全データ移行

DTS は、ソースオブジェクトのすべての既存データをターゲットデータベースに移行します。

説明

スキーマ移行と完全データ移行が完了するまで、移行オブジェクトに対して DDL 操作を実行しないでください。そうしないと、移行が失敗する可能性があります。

増分データ移行

完全データ移行の後、DTS はソースデータベースから REDO ログをポーリングしてキャプチャし、増分データ更新をターゲットデータベースに移行します。

増分データ移行により、アプリケーションを停止することなくスムーズにデータを移行できます。

サポートされる移行オブジェクト

  • SCHEMA、TABLE

    説明

    これには、PRIMARY KEY、UNIQUE KEY、FOREIGN KEY、DATATYPE (組み込みデータ型)、および DEFAULT CONSTRAINT が含まれます。

  • VIEW や PROCEDURE (PostgreSQL バージョン 11 以降が必要) などの他の機能のサポートレベルは、ターゲットデータベースのタイプによって異なります。詳細については、コンソールをご参照ください。

サポートされる増分 SQL 操作

操作タイプ

SQL 文

DML

INSERT、UPDATE、DELETE

DDL

  • 2020 年 10 月 1 日以降に作成されたデータ移行タスクのみが DDL 操作の移行をサポートします。

    重要
    • 2023 年 5 月 12 日より前に作成されたデータ移行タスクの場合、移行タスクを設定する前に、ソースデータベースにトリガーと関数を作成して DDL 情報をキャプチャする必要があります。詳細については、「トリガーと関数を使用して PostgreSQL の増分 DDL 移行を実装する」をご参照ください。

    • bit 型のデータは、増分データ移行中はサポートされません。

  • ソースデータベースアカウントが特権アカウントの場合、移行タスクは以下の DDL 文をサポートします:

    • CREATE TABLE、DROP TABLE

    • ALTER TABLE (RENAME TABLE、ADD COLUMN、ADD COLUMN DEFAULT、ALTER COLUMN TYPE、DROP COLUMN、ADD CONSTRAINT、ADD CONSTRAINT CHECK、ALTER COLUMN DROP DEFAULT を含む)

    • TRUNCATE TABLE

    • CREATE INDEX ON TABLE

    重要
    • CASCADE や RESTRICT などの DDL 文内の追加情報は移行されません。

    • SET session_replication_role = replica コマンドを使用するセッション内の DDL 文はサポートされていません。

    • 関数を呼び出して実行される DDL 文はサポートされていません。

    • ソースデータベースの単一のコミットに DML 文と DDL 文の両方が含まれている場合、DDL 文は移行されません。

    • ソースデータベースの単一のコミットに非移行オブジェクトの DDL 文が含まれている場合、DDL 文は移行されません。

データベースアカウントの権限

データベース

権限要件

ソース PolarDB for PostgreSQL (Oracle 互換) クラスター

特権アカウント。

ターゲット PolarDB for PostgreSQL (Oracle 互換) クラスター

[データベース所有者] 権限。

重要

[データベース所有者] は、データベース作成時に指定されます。

データベースアカウントの作成と権限付与:

PolarDB for PostgreSQL (Oracle 互換) クラスターのデータベースアカウントを作成し、権限を付与するには、「アカウントの作成」をご参照ください。

操作手順

  1. 以下のいずれかの方法で、ターゲットリージョンの移行タスクリストページに移動します。

    DTS コンソールから

    1. Data Transmission Service (DTS) コンソールにログインします。

    2. 左側のナビゲーションウィンドウで、データの移行 をクリックします。

    3. ページの左上隅で、移行インスタンスが配置されているリージョンを選択します。

    DMS コンソールから

    説明

    実際の操作は、DMS コンソールのモードとレイアウトによって異なる場合があります。詳細については、「シンプルモードコンソール」および「DMS コンソールのレイアウトとスタイルのカスタマイズ」をご参照ください。

    1. Data Management (DMS) コンソールにログインします。

    2. トップメニューバーで、[データ + AI] > [データ転送 (DTS)] > [データ移行] を選択します。

    3. データ移行タスク の右側で、移行インスタンスが配置されているリージョンを選択します。

  2. タスクの作成 をクリックして、タスク設定ページに移動します。

  3. ソースデータベースとターゲットデータベースを設定します。

    警告

    ソースインスタンスとターゲットインスタンスを選択した後、ページの上部に表示される制限事項を注意深くお読みください。そうしないと、タスクが失敗したり、データ不整合が発生したりする可能性があります。

    カテゴリ

    構成

    説明

    なし

    タスク名

    DTS は自動的にタスク名を生成します。識別しやすいように、わかりやすい名前を指定することを推奨します。名前は一意である必要はありません。

    ソースデータベース

    既存の接続情報の選択

    • システムに追加された (作成または保存された) データベースインスタンスを使用するには、ドロップダウンリストから目的のデータベースインスタンスを選択します。以下のデータベース情報が自動的に設定されます。

      説明

      DMS コンソールでは、このパラメーターは DMS データベースインスタンスの選択 という名前です。

    • データベースインスタンスをシステムに登録していない場合、または登録済みのインスタンスを使用する必要がない場合は、以下のデータベース情報を手動で設定します。

    データベースタイプ

    PolarDB (Oracle と互換性) を選択します。

    アクセス方法

    [パブリック IP] を選択してください。

    インスタンスリージョン

    ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターが存在するリージョンを選択します。

    マルチソースデータの選択

    • [単一 IP:ポート]:このオプションを選択した場合、ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターのプライマリノードの [DNS または IP アドレス][ポート] も入力する必要があります。

    • [複数 IP:ポート]:このオプションを選択した場合、ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターのプライマリノードを含む複数のノードの IP アドレスとポート番号を [複数ソース IP:ポート] フィールドに入力する必要があります。

      説明

      [複数 IP:ポート] を選択し、[複数ソース IP:ポート] フィールドに入力すると、PolarDB for PostgreSQL (Oracle 互換) クラスターでプライマリ/セカンダリのスイッチオーバーが発生した場合に、DTS は自動的に新しいプライマリノードに切り替えることができます。これは、ディザスタリカバリなどのシナリオに適しています。

    この例では、[シングル IP:ポート] が選択されています。

    [DNS または IP アドレス]

    ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターのプライマリノードのエンドポイントを入力します。

    説明

    ご利用のコンピューターで Ping コマンドを使用して、ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターの直接接続エンドポイントに対応する IP アドレスを取得できます。

    ポート

    ソースデータベースのサービスポートを入力します。デフォルトは 1521 です。

    説明

    この例では、このサービスポートはインターネット経由でアクセス可能である必要があります。

    複数ソースIP:ポート

    ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターなど、複数のノードの IP アドレスとポート番号を入力します。複数の IP:ポートペアはカンマ (,) で区切ります。

    Oracle の種類

    • [Non-RAC インスタンス]: このオプションを選択する場合は、[SID] も入力する必要があります。

    • [RAC または PDB インスタンス]:このオプションを選択した場合、[ServiceName] も入力する必要があります。

    この例では、[非 RAC インスタンス] が選択されています。

    データベース名

    ソースの PolarDB for PostgreSQL (Oracle 互換) クラスターで移行オブジェクトを含むデータベースの名前を入力します。

    データベースアカウント

    ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターのデータベースアカウントを入力します。権限要件については、「データベースアカウントの権限」をご参照ください。

    データベースパスワード

    データベースアカウントのパスワードを入力します。

    ターゲットデータベース

    既存の接続情報の選択

    • システムに追加された (作成または保存された) データベースインスタンスを使用するには、ドロップダウンリストから目的のデータベースインスタンスを選択します。以下のデータベース情報が自動的に設定されます。

      説明

      DMS コンソールでは、このパラメーターは DMS データベースインスタンスの選択 という名前です。

    • データベースインスタンスをシステムに登録していない場合、または登録済みのインスタンスを使用する必要がない場合は、以下のデータベース情報を手動で設定します。

    データベースタイプ

    PolarDB (Oracle と互換性) を選択します。

    アクセス方法

    [パブリック IP] を選択します。

    インスタンスリージョン

    ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターが存在するリージョンを選択します。

    [複数ソースデータの選択]

    • [単一 IP:ポート]:このオプションを選択した場合、ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターのプライマリノードの [DNS または IP アドレス][ポート] も入力する必要があります。

    • [複数 IP:ポート]:このオプションを選択した場合、ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターのプライマリノードを含む複数のノードの IP アドレスとポート番号を [複数ソース IP:ポート] フィールドに入力する必要があります。

      説明

      [複数 IP:ポート] を選択し、[複数ソース IP:ポート] フィールドに入力すると、PolarDB for PostgreSQL (Oracle 互換) クラスターでプライマリ/セカンダリのスイッチオーバーが発生した場合に、DTS は自動的に新しいプライマリノードに切り替えることができます。これは、ディザスタリカバリなどのシナリオに適しています。

    この例では、[単一 IP:ポート] が選択されています。

    [DNS または IP アドレス]

    ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターのプライマリノードのエンドポイントを入力します。

    説明

    ご利用のコンピューターで Ping コマンドを使用して、ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターの直接接続エンドポイントに対応する IP アドレスを取得できます。

    ポート

    ターゲットデータベースのサービスポートを入力します。デフォルトは 1521 です。

    [複数ソース IP:ポート]

    ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターなど、複数のノードの IP アドレスとポート番号を入力します。複数の IP:ポートペアはカンマ (,) で区切ります。

    データベース名

    ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターで移行オブジェクトを含むデータベースの名前を入力します。

    データベースアカウント

    ターゲットの PolarDB for PostgreSQL (Oracle 互換) クラスターのデータベースアカウントを入力します。権限要件については、「データベースアカウントの権限」をご参照ください。

    データベースパスワード

    データベースアカウントのパスワードを入力します。

  4. 設定が完了したら、ページ下部の 接続をテストして続行 をクリックします。

    説明
    • DTS サーバーからのアクセスを許可するために、DTS サーバーの IP アドレス CIDR ブロックがソースおよびターゲットデータベースのセキュリティ設定に追加されていることを確認してください。これは自動または手動で行うことができます。詳細については、「DTS サーバーの IP アドレス CIDR ブロックをホワイトリストに追加する」をご参照ください。

    • ソースまたはターゲットデータベースが自己管理データベースである場合 (アクセス方法Alibaba Cloud インスタンス ではない場合)、DTS サーバーの CIDR ブロック ダイアログボックスで 接続テスト をクリックする必要もあります。

  5. タスクオブジェクトを設定します。

    1. オブジェクト設定 ページで、移行するオブジェクトを設定します。

      構成

      説明

      移行タイプ

      • 完全移行のみを実行する必要がある場合は、スキーマ移行完全データ移行 の両方を選択します。

      • ダウンタイムなしで移行を実行するには、スキーマ移行完全データ移行、および 増分データ移行 を選択します。

      説明
      • スキーマ移行 を選択しない場合は、ターゲットデータベースにデータを受け取るためのデータベースとテーブルが存在することを確認する必要があります。必要に応じて、選択中のオブジェクト ボックスのオブジェクト名マッピング機能を使用することもできます。

      • 増分データ移行を選択しない場合、データ整合性を確保するために、データ移行中にソースインスタンスに新しいデータを書き込まないでください。

      競合するテーブルの処理モード

      • エラーの事前チェックと報告:ターゲットデータベースに同じ名前のテーブルが存在するかどうかをチェックします。同じ名前のテーブルが存在しない場合、事前チェックは合格します。同じ名前のテーブルが存在する場合、事前チェック中にエラーが報告され、データ移行タスクは開始されません。

        説明

        ターゲットデータベースのテーブルが同じ名前で、簡単に削除または名前変更できない場合は、ターゲットデータベースのテーブル名を変更できます。詳細については、「オブジェクト名マッピング」をご参照ください。

      • エラーを無視して続行:同じ名前のテーブルのチェックをスキップします。

        警告

        エラーを無視して続行 を選択すると、データ不整合やビジネスリスクが発生する可能性があります。例:

        • テーブルスキーマが一致し、ターゲットデータベースのレコードがソースデータベースのレコードと同じプライマリキー値を持つ場合:

          • 完全移行中、DTS はターゲットデータベースのレコードを保持します。ソースデータベースのレコードは移行されません。

          • 増分移行中、DTS はターゲットデータベースのレコードを保持しません。ソースデータベースのレコードがターゲットデータベースのレコードを上書きします。

        • テーブルスキーマが一致しない場合、データの一部の列のみが移行されるか、移行が失敗する可能性があります。慎重に進めてください。

      ソースオブジェクト

      ソースオブジェクト ボックスで、移行するオブジェクトをクリックし、Right arrow をクリックして 選択中のオブジェクト ボックスに移動します。

      説明
      • スキーマまたはテーブルレベルで移行するオブジェクトを選択できます。テーブルを移行オブジェクトとして選択した場合、ビュー、トリガー、ストアドプロシージャなどの他のオブジェクトはターゲットデータベースに移行されません。

      • 移行対象のテーブルに SERIAL フィールドが含まれており、移行タイプスキーマ移行 を選択した場合は、シーケンスも選択するか、スキーマ全体を移行することを推奨します。

      選択中のオブジェクト

      • ターゲットインスタンスに移行するオブジェクトの名前を変更するには、[選択済みオブジェクト] セクションでオブジェクトを右クリックします。詳細については、「個別のテーブル列マッピング」をご参照ください。

      • 一度に複数のオブジェクトの名前を変更するには、[選択済みオブジェクト] セクションの右上隅にある [一括編集] をクリックします。詳細については、「一度に複数のオブジェクト名をマッピングする」をご参照ください。

      説明
      • オブジェクト名マッピング機能を使用すると、名前が変更されたオブジェクトに依存する他のオブジェクトの移行が失敗する可能性があります。

      • WHERE 句を使用してデータをフィルタリングするには、[選択済みオブジェクト] ボックスで移行するテーブルを右クリックし、表示されるダイアログボックスでフィルター条件を設定します。手順については、「フィルター条件の設定」をご参照ください。

      • データベースまたはテーブルレベルで移行する SQL 操作を選択するには、[選択済みオブジェクト] ボックスで移行オブジェクトを右クリックし、表示されるダイアログボックスで目的の SQL 操作を選択します。

    2. 詳細設定へ をクリックして、詳細パラメーターを設定します。

      構成

      説明

      タスクのスケジュールに使用する専用クラスターの選択

      デフォルトでは、DTS は共有クラスターでタスクをスケジュールします。選択する必要はありません。より安定したタスクが必要な場合は、DTS 移行タスクを実行するために専用クラスターを購入できます。

      失敗した接続の再試行時間

      移行タスクが開始された後、ソースまたはターゲットデータベースへの接続が失敗した場合、DTS はエラーを報告し、すぐに接続のリトライを開始します。デフォルトのリトライ時間は 720 分です。リトライ時間は 10 分から 1440 分の間でカスタマイズできます。30 分以上に設定することを推奨します。指定された時間内に DTS がソースおよびターゲットデータベースに再接続した場合、移行タスクは自動的に再開されます。そうでない場合、タスクは失敗します。

      説明
      • 同じソースまたはターゲットを共有する複数の DTS インスタンスの場合、ネットワークのリトライ時間は最後に作成されたタスクの設定によって決まります。

      • 接続リトライ期間中もタスクは課金されるため、ビジネスニーズに基づいてリトライ時間をカスタマイズするか、ソースおよびターゲットデータベースインスタンスがリリースされた後、できるだけ早く DTS インスタンスをリリースすることを推奨します。

      移行元データベースと移行先データベースで他の問題が発生した場合の、再試行までの待機時間です。

      移行タスクが開始された後、ソースまたはターゲットデータベースで DDL または DML 実行例外などの接続以外の問題が発生した場合、DTS はエラーを報告し、すぐに操作のリトライを開始します。デフォルトのリトライ時間は 10 分です。リトライ時間は 1 分から 1440 分の間でカスタマイズできます。10 分以上に設定することを推奨します。指定されたリトライ時間内に関連する操作が成功した場合、移行タスクは自動的に再開されます。そうでない場合、タスクは失敗します。

      重要

      移行元データベースと移行先データベースで他の問題が発生した場合の、再試行までの待機時間です。 の値は、失敗した接続の再試行時間 の値より小さくする必要があります。

      完全移行率を制限するかどうか

      完全移行中、DTS はソースおよびターゲットデータベースの読み取りおよび書き込みリソースを消費し、データベースの負荷が増加する可能性があります。必要に応じて、完全移行タスクの速度制限を有効にすることができます。1 秒あたりのソースデータベースのクエリ率 QPS1 秒あたりの完全移行の行数 RPS、および 1 秒あたりの完全移行データ量 (MB) BPS を設定して、ターゲットデータベースの負荷を軽減できます。

      説明
      • この設定項目は、移行タイプ完全データ移行 を選択した場合にのみ利用可能です。

      • 移行インスタンスの実行後に完全移行速度を調整することもできます。

      増分移行率を制限するかどうか

      必要に応じて、増分移行タスクの速度制限を設定することもできます。1 秒あたりの増分移行の行数 RPS1 秒あたりの増分移行データ量 (MB) BPS を設定して、ターゲットデータベースの負荷を軽減できます。

      説明
      • この設定項目は、移行タイプ増分データ移行 を選択した場合にのみ利用可能です。

      • 移行インスタンスの実行後に増分移行速度を調整することもできます。

      環境タグ

      必要に応じて、インスタンスを識別するための環境タグを選択できます。この例では、選択は不要です。

      ETL 機能の設定

      抽出、変換、書き出し (ETL) 機能を有効にするかどうかを選択します。詳細については、「ETL とは何か?」をご参照ください。有効な値:

      監視アラート

      ビジネスニーズに応じて、アラートを設定し、アラート通知を受け取るかどうかを選択します。

      • ×:アラートを設定しません。

      • アラートしきい値アラート通知を設定してアラートを構成します。移行が失敗した場合や遅延がしきい値を超えた場合、システムはアラート通知を送信します。

    3. [次へ: データ検証] をクリックして、データ検証タスクを設定します。

      データ検証機能の詳細については、「データ検証の設定」をご参照ください。

  6. タスクを保存し、事前チェックを実行します。

    • API 操作を呼び出す際にこのインスタンスを設定するためのパラメーターを表示するには、次:タスク設定の保存と事前チェック ボタンにポインターを合わせ、表示されるバブル内の OpenAPI パラメーターのプレビュー をクリックします。

    • API パラメーターを表示する必要がない場合、または表示が完了した場合は、ページ下部の 次:タスク設定の保存と事前チェック をクリックします。

    説明
    • 移行タスクが開始される前に、DTS は事前チェックを実行します。タスクは事前チェックに合格した後にのみ開始されます。

    • 事前チェックが失敗した場合は、失敗したチェック項目の横にある 詳細を表示 をクリックし、プロンプトに基づいて問題を修正してから、再度事前チェックを実行します。

    • 事前チェック中に警告が報告された場合:

      • 無視できないチェック項目の場合は、失敗した項目の横にある 詳細を表示 をクリックし、プロンプトに基づいて問題を修正してから、再度事前チェックを実行します。

      • 無視できるチェック項目の場合は、アラートの詳細を確認無視OK再度事前チェックを実行 をクリックしてアラート項目をスキップし、再度事前チェックを実行できます。警告を無視することを選択した場合、データ不整合などの問題が発生し、ビジネスにリスクをもたらす可能性があります。

  7. インスタンスを購入します。

    1. 成功率 が 100% になったら、次:インスタンスの購入 をクリックします。

    2. 購入 ページで、データ移行インスタンスのリンク仕様を選択します。詳細については、次の表をご参照ください。

      カテゴリ

      パラメーター

      説明

      新しいインスタンスクラス

      リソースグループの設定

      インスタンスが属するリソースグループを選択します。デフォルト値はデフォルトリソースグループです。詳細については、「リソース管理とは何か?」をご参照ください。

      インスタンスクラス

      DTS は、異なるパフォーマンスレベルの移行仕様を提供します。リンク仕様は移行速度に影響します。ビジネスシナリオに基づいて仕様を選択できます。詳細については、「データ移行リンクの仕様」をご参照ください。

    3. 設定が完了したら、Data Transmission Service (従量課金) 利用規約 を読み、選択します。

    4. 購入して起動 をクリックします。表示される OK ダイアログボックスで、[OK] をクリックします。

      データ移行タスク リストページで、移行タスクの進捗状況を確認できます。

      説明
      • 移行タスクに増分移行が含まれていない場合、完全移行が完了すると自動的に停止します。タスクが停止すると、その ステータス完了 に変わります。

      • 移行タスクに増分移行が含まれている場合、自動的に停止しません。増分移行タスクは実行を続けます。増分移行タスクが実行中である間、タスクの ステータス実行中 です。