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

Data Transmission Service:PolarDB-X 2.0 インスタンスから自己管理 Oracle データベースへのデータ移行

最終更新日:Mar 29, 2026

Data Transmission Service (DTS) を使用すると、PolarDB-X 2.0 インスタンスから自己管理 Oracle データベースへデータを移行できます。一括切り替え(ワンタイムカットオーバー)の場合は、スキーマ移行と完全なデータ移行を選択します。また、トランジション期間中にソースとターゲットを同期したままにし、ダウンタイムを最小限に抑えるには、増分データ移行を追加してください。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • ソース PolarDB-X 2.0 インスタンスの全データサイズよりも大きな空きストレージ容量を持つ自己管理 Oracle データベース

  • Oracle データベース内に作成済みのスキーマ(Oracle でユーザーを作成すると、スキーマは自動的に作成されます)

  • ソースおよびターゲットの両方のデータベースで必要な権限を持つデータベースアカウント(「必要な権限」を参照)

移行タイプの選択

開始前に、ご使用のシナリオに合った移行タイプを選択してください。

シナリオ選択する移行タイプ
移行中の書き込みなしで一括切り替えを実施スキーマ移行 + 完全なデータ移行
トランジション期間中にソースとターゲットを同期してダウンタイムを最小限に抑えるスキーマ移行 + 完全なデータ移行 + 増分データ移行
増分データ移行 を選択しない場合、データ整合性を保つため、移行中はソースデータベースへの書き込みを行わないことを推奨します。

制限事項

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

制限事項影響操作
テーブルには、すべてのフィールドが一意である PRIMARY KEY または一意制約(UNIQUE constraint)が必要ターゲットデータベースに重複レコードが含まれる可能性あり移行前にプライマリキーまたは一意制約を追加
移行中にテーブルまたはカラムの名前を変更する場合、1 つのタスクでは最大 5,000 個のテーブルをサポート制限を超えるタスクでリクエストエラーが発生複数のタスクに分割するか、データベース全体を移行
テーブル名に大文字(uppercase letter)を含むテーブルは、スキーマ移行のみ可能これらのテーブルについては完全移行および増分移行がサポートされないこれらのテーブルについては手動でのデータ転送を計画
binlog_row_image パラメーターを full に設定する必要があります(バイナリロギングはデフォルトで有効化されています)事前チェックが失敗し、タスクを開始できませんbinlog_row_imagefullパラメーター設定
DTS は、スキーマ移行時にソースデータベースの外部キー(foreign keys)を移行します。

一般的な制限事項

  • データベースサーバーへの負荷を軽減するため、非ピーク時間帯に移行を実施してください。完全なデータ移行では、ソースおよびターゲットの読み取り・書き込みリソースが使用されます。

  • 完全なデータ移行が完了した後、同時実行の INSERT 操作により、ターゲットのテーブルが断片化(fragmentation)します。ターゲットの表領域(tablespace)の使用量は、ソースよりも大きくなります。

  • 移行中は、データの不整合を防ぐために、送信先にデータを書き込む際には、DTSのみを使用してください。

  • 1 つのカラムの属性のみ変更可能です。基本データ型(data type)の変更はできません。

  • DTS は、ソースインスタンス内に dts_health_check という名前のデータベースおよび ha_health_check という名前のテーブルを作成します。DTS はこのテーブルを定期的に更新し、バイナリログ(binary log)の位置を進めます。

課金

移行タイプインスタンス構成料金インターネットトラフィック料金
スキーマ移行および完全なデータ移行無料Alibaba Cloud からインターネット経由でデータを移行する場合にのみ課金されます。詳細については、「課金概要」をご参照ください。
増分データ移行課金対象です。詳細については、「課金概要」をご参照ください。

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

DTS は、増分データ移行において以下の DML 操作をサポートしています:INSERT、UPDATE、DELETE。

DDL

CREATE TABLE、ALTER TABLE、RENAME TABLE、TRUNCATE TABLE、DROP TABLE

必要な権限

移行に使用するデータベースアカウントに、以下の権限を付与してください。

データベーススキーマ移行完全なデータ移行増分データ移行
ソース PolarDB-X 2.0 インスタンスSELECTSELECTREPLICATION SLAVE、REPLICATION CLIENT、および移行対象オブジェクトに対する SELECT
ターゲットの自己管理 Oracle データベーススキーマに対する所有者権限

データベースアカウントの作成および権限の付与方法:

データ移行の実行

ステップ 1:データ移行タスクページを開く

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

  2. 上部のナビゲーションバーで、DTS をクリックします。

  3. 左側のナビゲーションウィンドウで、DTS (DTS) > データ移行 を選択します。

ナビゲーションは、DMS コンソールのモードおよびレイアウトによって異なります。詳細については、「シンプルモード」および「DMS コンソールのレイアウトおよびスタイルのカスタマイズ」をご参照ください。また、直接「新しい DTS コンソールのデータ移行タスクページ」にアクセスすることもできます。

ステップ 2:リージョンの選択

データ移行タスク の横にあるドロップダウンリストから、データ移行インスタンスが配置されているリージョンを選択します。

新しい DTS コンソールでは、左上隅のリージョンを選択します。

ステップ 3:ソースおよびターゲットデータベースの構成

タスクの作成 をクリックします。タスク作成ウィザードで、以下のパラメーターを構成します。

ソースデータベース

パラメーター説明
タスク名タスクの名前です。DTS が自動的にタスク名を割り当てます。タスクを容易に識別できるよう、意味のある名前を指定することを推奨します。一意のタスク名を指定する必要はありません。
既存の DMS データベースインスタンスを選択(任意。DMS データベースインスタンスを登録していない場合は、このオプションを無視し、以下のセクションでデータベース設定を構成してください)パラメーターを自動入力するために既存のインスタンスを選択するか、手動で構成する場合は空白のままにしてください。
データベースタイプPolarDB-X 2.0 を選択します。
アクセス方法Alibaba Cloud インスタンス を選択します。
インスタンスリージョンソース PolarDB-X 2.0 インスタンスが配置されているリージョンです。
Alibaba Cloud アカウント間でのデータ複製ソースとターゲットが同一アカウント下にある場合は、いいえ を選択します。
インスタンス IDソース PolarDB-X 2.0 インスタンスの ID です。
データベースアカウントソースインスタンスのデータベースアカウントです。必要な権限については、「必要な権限」をご参照ください。
データベースパスワードデータベースアカウントのパスワードです。

ターゲットデータベース

パラメーター説明
既存の DMS データベースインスタンスを選択(任意。DMS データベースインスタンスを登録していない場合は、このオプションを無視し、以下のセクションでデータベース設定を構成してください)パラメーターを自動入力するために既存のインスタンスを選択するか、手動で構成する場合は空白のままにしてください。
データベースタイプOracle を選択します。
アクセス方法ECS 上の自己管理データベース を選択します。異なるアクセス方法を使用する場合は、事前に必要なネットワーク環境を構築してください。詳細については、「事前準備の概要」をご参照ください。
インスタンス リージョンターゲットの自己管理 Oracle データベースが配置されているリージョンです。
ECS インスタンス IDOracle データベースをホストする Elastic Compute Service (ECS) インスタンスの ID です。
ポート番号Oracle データベースのサービスポートです。デフォルト値:1521
Oracle タイプアーキテクチャを選択します:Non-RAC InstanceSID を指定)または RAC or PDB InstanceService Name を指定)。
データベースアカウントターゲット Oracle データベースのアカウントです。必要な権限については、「必要な権限」をご参照ください。
データベースパスワードデータベースアカウントのパスワードです。

ステップ 4:接続性のテスト

ページ下部で、接続性のテストと続行 をクリックします。

ステップ 5:DTS のネットワークアクセス構成

自己管理データベースのセキュリティ設定(ファイアウォールルールなど)に、DTS サーバーの CIDR ブロックを追加し、インバウンドアクセスを許可します。その後、接続性のテストと続行 をクリックします。

ほとんどの場合、DTS がネットワークアクセスを自動的に処理します。

  • Alibaba Cloud データベースインスタンス(ApsaraDB RDS、ApsaraDB for MongoDB など):DTS が自動的にその CIDR ブロックをインスタンスの IP アドレスホワイトリストに追加します。

  • 単一 ECS インスタンス上の自己管理データベース:DTS が自動的にその CIDR ブロックを ECS のセキュリティグループルールに追加します。ECS インスタンスがデータベースに到達できることを確認してください。

  • 複数の ECS インスタンス上の自己管理データベース:各 ECS インスタンスのセキュリティグループルールに、手動で DTS の CIDR ブロックを追加します。

  • オンプレミスまたはサードパーティクラウドのデータベース:データベースの IP アドレスホワイトリストに、手動で DTS の CIDR ブロックを追加します。

DTS サーバーの CIDR ブロックの完全な一覧については、「オンプレミスデータベースのセキュリティ設定への DTS サーバー CIDR ブロックの追加」をご参照ください。

警告

DTS の CIDR ブロックをデータベースまたは ECS のセキュリティ設定に追加すると、セキュリティリスクが生じる可能性があります。実行前に、以下のような予防措置を講じてください:アカウント認証情報(credential)の強化、公開ポート(exposed port)の制限、API 認証(authentication)の有効化、IP ホワイトリストおよびセキュリティグループルールの定期的な監査と不正 CIDR ブロックの禁止、Express Connect、VPN Gateway、または Smart Access Gateway を使用した DTS への接続。

ステップ 6:オブジェクトの選択および移行設定の構成

以下の移行パラメーターを構成します。

パラメーター説明
移行タイプご使用のシナリオに基づいてタイプを選択します。「移行タイプの選択」をご参照ください。
競合テーブルの処理モード事前チェックおよびエラー報告:ターゲットに同名のテーブルが存在する場合、事前チェックが失敗します。削除できない競合テーブルの名前を変更するには、オブジェクト名マッピング(object name mapping)機能を使用します。「オブジェクト名のマッピング」をご参照ください。エラーを無視して続行:同名テーブルに関する事前チェックをスキップします。主キーが一致するレコードはスキップされますが、スキーマの不一致により部分的な移行やタスクの失敗が発生する可能性があります。
ターゲットインスタンスにおけるオブジェクト名の大文字小文字の処理ターゲットにおけるデータベース名、テーブル名、カラム名の大文字小文字のケースを制御します。デフォルト:DTS デフォルトポリシー。「ターゲットインスタンスにおけるオブジェクト名の大文字小文字の指定」をご参照ください。
ソースオブジェクトカラム、テーブル、またはデータベースを選択し、矢印アイコンをクリックして 選択済みオブジェクト に移動します。テーブルまたはカラムを選択すると、ビュー、トリガー、ストアドプロシージャ(stored procedure)は除外されます。
選択済みオブジェクトターゲットデータベースを右クリックし、スキーマの編集 を選択します。スキーマ名 フィールドに、データを受信する Oracle データベース内のスキーマ名を入力します。スキーマ名には大文字を使用してください。行をフィルターするには、テーブルを右クリックして WHERE 条件を指定します。「SQL 条件を使用したデータのフィルター」をご参照ください。オブジェクト名マッピング機能によるオブジェクト名の変更は、依存オブジェクト(dependent object)の移行失敗を引き起こす可能性があります。

ステップ 7:高度な設定の構成

次へ:高度な設定 をクリックし、以下のパラメーターを構成します。

パラメーター説明
タスクのスケジュールに使用する専用クラスターの選択デフォルトでは、DTS が共有クラスター(shared cluster)上でタスクをスケジュールします。予測可能なパフォーマンスを得るには、専用クラスター(dedicated cluster)を購入して選択します。「DTS 専用クラスターとは」をご参照ください。
アラートの設定いいえ:アラートを送信しません。はい:タスクの失敗または移行遅延(migration latency)がしきい値(threshold)を超えた場合に、アラート連絡先(alert contact)へ通知(notification)を送信します。「モニタリングとアラートの構成」をご参照ください。
接続失敗時の再試行時間接続失敗後に DTS が再試行する時間です。有効範囲:10~1440 分。デフォルト:720 分。30 分より大きい値を設定してください。この時間内に接続が復旧した場合、タスクは再開されます。それ以外の場合は失敗します。複数のタスクが同一のソースまたはターゲットを共有する場合、最も最近設定された値が適用されます。再試行中は、DTS インスタンスに対して課金されます。
ソースおよびターゲットデータベースでその他の問題が発生した際の再試行までの待機時間DDL または DML 操作の失敗後に DTS が再試行する時間です。有効範囲:1~1440 分。デフォルト:10 分。10 分より大きい値を設定してください。この値は、接続失敗時の再試行時間 より小さくする必要があります。
完全なデータ移行のスロットル機能の有効化完全なデータ移行中の読み取り/書き込みスループット(throughput)を制限し、データベース負荷を軽減します。ソースデータベースへのクエリ数(QPS)完全なデータ移行の RPS完全移行のデータ移行速度(MB/s) を構成します。完全なデータ移行 が選択されている場合にのみ表示されます。
増分データ移行のスロットル機能の有効化増分データ移行中のスループットを制限します。増分データ移行の RPS および 増分移行のデータ移行速度(MB/s) を構成します。増分データ移行 が選択されている場合にのみ表示されます。
環境タグDTS インスタンスを識別するための任意のタグです。
ETL の構成はい:抽出・変換・書き出し(extract, transform, and load)処理を有効化します。コードエディタ(code editor)でデータ処理文(statement)を入力します。「データ移行またはデータ同期タスクにおける ETL の構成」および「ETL とは」をご参照ください。いいえ:ETL を無効化します。
順方向および逆方向タスクのハートビートテーブル(heartbeat table)に対する SQL 操作の削除はい:ハートビート SQL をソースデータベースに書き込みません。DTS インスタンスに遅延インジケーターが表示される場合があります。いいえ:ハートビート SQL をソースに書き込むため、物理バックアップ(physical backup)やクローンなどの機能に影響を与える可能性があります。

ステップ 8:事前チェックの実行

次へ:タスク設定の保存と事前チェック をクリックします。

次へ:タスク設定の保存と事前チェック の上にカーソルを合わせ、OpenAPI パラメーターのプレビュー をクリックすると、このタスクの OpenAPI パラメーターを確認できます。

DTS は、移行を開始する前に事前チェック(precheck)を実行します。事前チェックが成功するまで、タスクは開始できません。

  • チェック項目が失敗した場合、隣の 詳細の表示 をクリックし、問題を修正してから 再び事前チェック をクリックします。

  • チェック項目に無視可能な警告が表示された場合、警告の詳細の確認 > 無視 > OK をクリックし、その後 再び事前チェック をクリックします。警告を無視すると、データの不整合(data inconsistency)が発生する可能性があります。

成功率100 % になるまで待ち、その後 次へ:インスタンスの購入 をクリックします。

ステップ 9:移行インスタンスの購入

インスタンスの購入 ページで、以下のパラメーターを構成します。

セクションパラメーター説明
新規インスタンスクラスリソースグループ移行インスタンスのリソースグループ。デフォルト: デフォルトリソースグループResource Management とは
インスタンスクラスインスタンスクラスは移行速度を決定します。データ量および遅延要件に基づいて選択してください。「データ移行インスタンスの仕様」をご参照ください。

Data Transmission Service(従量課金)利用規約 のチェックボックスを読み、選択した後、購入して開始 をクリックします。

タスクがタスクリストに表示されます。そこで進行状況を監視できます。