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

Data Transmission Service:自己管理型OracleデータベースからPolarDB for MySQLクラスターへのデータの移行

最終更新日:Nov 14, 2024

このトピックでは、data Transmission Service (DTS) を使用して、自己管理型OracleデータベースからPolarDB for MySQLクラスターにデータを移行する方法について説明します。 DTS はフルデータ移行と増分データ移行に対応しています。 自己管理型のOracleデータベースからデータを移行する場合、サポートされているすべての移行タイプを選択して、サービスの継続性を確保できます。

前提条件

  • 自己管理型Oracleデータベースのバージョン番号は、9i、10g、11g、12c、18c、または19cです。

  • SUPPLEMENTAL_LOG_DATA_PKおよびSUPPLEMENTAL_LOG_DATA_UIを含む補足ログは、自己管理型Oracleデータベースに対して有効になっています。 詳細については、『サプリメンタルロギング』をご参照ください。

  • 自己管理型OracleデータベースはARCHIVELOGモードで実行されます。 Oracleデータベースのアーカイブされたログ・ファイルはアクセス可能であり、アーカイブされたログ・ファイルには適切な保持期間が指定される。 詳細については、『 アーカイブ REDO ログファイルの管理』をご参照ください。

  • PolarDB for MySQLクラスターの使用可能なストレージ容量は、自己管理型Oracleデータベースのデータの合計サイズよりも大きくなっています。

使用状況ノート

  • DTSは、完全データ移行中にソースデータベースとターゲットデータベースの読み取りおよび書き込みリソースを使用します。 これは、データベースサーバの負荷を増加させる可能性がある。 データベースのパフォーマンスが悪い場合、仕様が低い場合、またはデータ量が多い場合、データベースサービスが利用できなくなる可能性があります。 たとえば、ソースデータベースで多数の低速SQLクエリが実行されている場合、テーブルにプライマリキーがない場合、またはターゲットデータベースでデッドロックが発生する場合、DTSは大量の読み取りおよび書き込みリソースを占有します。 データを移行する前に、移行元データベースと移行先データベースのパフォーマンスに対するデータ移行の影響を評価します。 オフピーク時にデータを移行することを推奨します。 たとえば、ソースデータベースとターゲットデータベースのCPU使用率が30% 未満の場合にデータを移行できます。

  • 移行元データベースで移行するテーブルには、PRIMARY KEYまたはUNIQUE制約が必要であり、すべてのフィールドが一意である必要があります。 そうでない場合、宛先データベースは重複するデータレコードを含み得る。

  • 自己管理型OracleデータベースがReal Application Cluster (RAC) アーキテクチャでデプロイされ、Alibaba Cloud仮想プライベートクラウド (VPC) を介してDTSに接続されている場合、Oracle RACのSingle Client Access Name (SCAN) IPアドレスと各ノードの仮想IPアドレス (VIP) をVPCに接続し、ルートを設定する必要があります。 この設定により、DTSタスクが期待どおりに実行できるようになります。 詳細については、「VPN Gatewayを使用したデータセンターのDTSへの接続」をご参照ください。

    重要

    DTSコンソールでソースOracleデータベースを構成する場合、Oracle RACのSCAN IPアドレスをデータベースエンドポイントまたはIPアドレスとして指定できます。

  • データ移行タスクが失敗して停止すると、DTSは自動的にタスクを再開します。 ワークロードをターゲットインスタンスに切り替える前に、データ移行タスクを停止またはリリースします。 それ以外の場合、タスクの再開後、ソースデータベースのデータはターゲットインスタンスのデータを上書きします。

  • PolarDB for MySQLクラスターのテーブル名は大文字と小文字を区別しません。 ソースOracleデータベースのテーブル名に大文字が含まれている場合、PolarDB for MySQLはテーブルを作成する前にすべての大文字を小文字に変換します。

    ソースOracleデータベースに、大文字のみが異なる同じテーブル名が含まれている場合、これらのテーブル名は重複として識別されます。 スキーマの移行中に、次のメッセージが返されます。the object already exists. ターゲットインスタンスでの名前の競合を防ぐために、オブジェクト名マッピング機能を使用して、移行されたオブジェクトの名前を変更できます。 詳細は、オブジェクト名のマッピングをご参照ください。

  • DTSは、PolarDB for MySQLクラスターにターゲットデータベースを自動的に作成します。 ただし、ソースデータベースの名前が無効な場合は、データ移行タスクを設定する前に、PolarDB for MySQLクラスターにデータベースを手動で作成する必要があります。 データベースの作成方法とデータベースの命名規則の詳細については、「データベースの作成」をご参照ください。

課金ルール

移行タイプ

タスク設定料金

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

スキーマ移行とフルデータ移行

無料です。

インターネット経由でAlibaba Cloudからデータが移行された場合にのみ課金されます。 詳細については、「課金の概要」をご参照ください。

増分データ移行

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

移行タイプ

  • スキーマの移行

    DTSは、テーブルとインデックスのスキーマ移行をサポートしています。 DTSは、ビュー、シノニム、トリガー、ストアドプロシージャ、関数、パッケージ、およびユーザー定義型のオブジェクトのタイプのスキーマ移行をサポートしていません。 DTSには、テーブルとインデックスのスキーマ移行に次の制限があります。

    • DTSは、ネストされたテーブルのスキーマ移行をサポートしません。 DTSは、クラスタ化されたテーブルとインデックス編成されたテーブルを、ターゲットデータベースの標準テーブルに変換します。

    • DTSは、関数ベースのインデックス、ドメインインデックス、ビットマップインデックス、またはリバースインデックスのスキーマ移行をサポートしていません。

  • フルデータ移行

    DTSは、必要なオブジェクトの履歴データを自己管理OracleデータベースからPolarDB for MySQLクラスターのターゲットデータベースに移行します。

  • 増分データ移行

    DTSは、自己管理Oracleデータベースからredoログ・ファイルを取得します。 次に、DTSは、自己管理型Oracleデータベースの増分データをPolarDB for MySQLクラスターのターゲットデータベースに同期します。 増分データ移行を使用すると、自己管理型Oracleデータベースから移行先データベースにデータを移行するときに、サービスの継続性を確保できます。

データ型マッピング

このトピックでは、ソースデータベースとターゲットデータベースは異種データベースです。 DTSは、スキーマ移行後にソースデータベースとターゲットデータベースのスキーマが一貫していることを保証しません。 データ型変換がビジネスに与える影響を評価することを推奨します。 詳細については、「異種データベース間のデータ型マッピング」をご参照ください。

始める前に

自己管理型のOracleデータベースにログインし、データの収集に使用するアカウントを作成し、そのアカウントに権限を付与します。

説明

次の表に示す権限を付与されたアカウントを作成した場合は、この手順をスキップできます。

データベース

スキーマ移行

完全なデータ移行

増分データ移行

自己管理型Oracleデータベース

スキーマ所有者の権限

スキーマ所有者の権限

データベース管理者 (DBA)

PolarDB for MySQL クラスター

スキーマ所有者の権限

スキーマ所有者の権限

スキーマ所有者の権限

データベースアカウントを作成し、データベースアカウントに権限を付与する方法の詳細については、以下のトピックを参照してください。

ログ記録を有効にし、Oracleデータベース・アカウントにきめ細かい権限を付与する

重要

Oracleデータベースから増分データを移行する必要があるが、データベース管理者 (DBA) 権限をデータベースアカウントに付与できない場合は、アーカイブロギングと補足ロギングを有効にし、アカウントにきめ細かい権限を付与できます。

  1. アーカイブロギングと補足ロギングを有効にします。

    タイプ

    手順

    アーカイブロギング

    次のステートメントを実行して、アーカイブログを有効にします。

    shutdown immediate;
    startup mount;
    alter database archivelog;
    alter database open;
    archive log list;

    補足ロギング

    ビジネス要件に基づいて、データベースまたはテーブルレベルで補足ログを有効にします。

    説明

    データベースレベルの補足ログを有効にして、Data Transmission Service (DTS) タスクの安定性を確保できます。 テーブルレベルの補足ロギングを有効にして、ソースOracleデータベースのディスク使用量を減らすことができます。

    • データベースレベルの補足ロギングの有効化

      1. 次のステートメントを実行して、最小限の補足ロギングを有効にします。

        alter database add supplemental log data;
      2. 次のステートメントを実行して、データベースレベルで主キーと一意キーの補足ログを有効にします。

        alter database add supplemental log data (primary key,unique index) columns;
    • テーブルレベルの補足ロギングの有効化

      1. 次のステートメントを実行して、最小限の補足ロギングを有効にします。

        alter database add supplemental log data;
      2. 次のいずれかの方法を使用して、テーブルレベルの補足ログを有効にします。

        • テーブルレベルでプライマリキーの補足ログを有効にする

          alter table table_name add supplemental log data (primary key) columns;
        • すべての列でテーブルレベルの補足ログを有効にする

          alter table tb_name add supplemental log data (all) columns;

    強制ロギング

    次のステートメントを実行して、強制ロギングを有効にします。

    alter database force logging;
  2. Oracleデータベースアカウントにきめ細かい権限を付与します。

    マルチテナントアーキテクチャを使用する
    # rdsdt_dtsacctという名前のデータベースアカウントを作成し、そのアカウントに権限を付与します。
    rdsdt_dtsacctによるIDENTIFIEDユーザーrdsdt_dtsacctを作成します。rdsdt_dtsacctにセッション作成を付与します。rdsdt_dtsacctへの接続を許可します。rdsdt_dtsacctにリソースを付与します。sys.dbms_logmnrでrdsdt_dtsacctに実行を許可します。V_$LOGMNR_LOGSでrdsdt_dtsacctにselectを付与します。all_objectsのselectをrdsdt_dtsacctに付与します。all_tab_colsのselectをrdsdt_dtsacctに付与します。dba_registryのselectをrdsdt_dtsacctに付与します。rdsdt_dtsacctに任意のテーブルを選択します。rdsdt_dtsacctへのトランザクションの選択を許可します。-- v$log特権
    v_$ logのselectをrdsdt_dtsacctに付与します。-- v$logfile特権
    v_$ logfileのselectをrdsdt_dtsacctに付与します。-- v$archived_log特権
    v_$ archived_logでrdsdt_dtsacctにselectを付与します。-- v $パラメータ特権
    v_$ パラメータのselectをrdsdt_dtsacctに付与します。-- v $データベース特権
    v_$ データベースのselectをrdsdt_dtsacctに付与します。-- v$active_instances特権
    v_$ active_instancesのselectをrdsdt_dtsacctに付与します。-- v $インスタンス特権
    v_$ インスタンスのselectをrdsdt_dtsacctに付与します。-- v$logmnr_content権限
    v_$ logmnr_contentsのselectをrdsdt_dtsacctに付与します。-- システムテーブル
    sys.USE R$ の選択をrdsdt_dtsacctに付与します。select on SYS.OBJ $をrdsdt_dtsacctに付与します。select on SYS.COL $をrdsdt_dtsacctに付与します。select on SYS.IND $をrdsdt_dtsacctに付与します。select on SYS.ICOL $をrdsdt_dtsacctに付与します。select on SYS.CDEF $をrdsdt_dtsacctに付与します。select on SYS.CCOL $をrdsdt_dtsacctに付与します。select on SYS.TABPART $をrdsdt_dtsacctに付与します。select on SYS.TABSUBPART $をrdsdt_dtsacctに付与します。select on SYS.TABCOMPART $をrdsdt_dtsacctに付与します。select_catalog_roleをrdsdt_dtsacctに付与します。
    
    # プラガブルデータベース (PDB) に切り替えます。 rdsdt_dtsacctという名前のデータベースアカウントを作成し、そのアカウントに権限を付与します。
    ALTER SESSION SETコンテナ=ORCLPDB1;
    rdsdt_dtsacctによるIDENTIFIEDユーザーrdsdt_dtsacctを作成します。rdsdt_dtsacctにセッション作成を付与します。rdsdt_dtsacctへの接続を許可します。rdsdt_dtsacctにリソースを付与します。sys.dbms_logmnrでrdsdt_dtsacctに実行を許可します。all_objectsのselectをrdsdt_dtsacctに付与します。all_tab_colsのselectをrdsdt_dtsacctに付与します。dba_registryのselectをrdsdt_dtsacctに付与します。rdsdt_dtsacctに任意のテーブルを選択します。rdsdt_dtsacctへのトランザクションの選択を許可します。-- v$log特権
    v_$ logのselectをrdsdt_dtsacctに付与します。-- v$logfile特権
    v_$ logfileのselectをrdsdt_dtsacctに付与します。-- v$archived_log特権
    v_$ archived_logでrdsdt_dtsacctにselectを付与します。-- v $パラメータ特権
    v_$ パラメータのselectをrdsdt_dtsacctに付与します。-- v $データベース特権
    v_$ データベースのselectをrdsdt_dtsacctに付与します。-- v$active_instances特権
    v_$ active_instancesのselectをrdsdt_dtsacctに付与します。-- v $インスタンス特権
    v_$ インスタンスのselectをrdsdt_dtsacctに付与します。-- v$logmnr_content権限
    v_$ logmnr_contentsのselectをrdsdt_dtsacctに付与します。sys.USE R$ の選択をrdsdt_dtsacctに付与します。select on SYS.OBJ $をrdsdt_dtsacctに付与します。select on SYS.COL $をrdsdt_dtsacctに付与します。select on SYS.IND $をrdsdt_dtsacctに付与します。select on SYS.ICOL $をrdsdt_dtsacctに付与します。select on SYS.CDEF $をrdsdt_dtsacctに付与します。select on SYS.CCOL $をrdsdt_dtsacctに付与します。select on SYS.TABPART $をrdsdt_dtsacctに付与します。select on SYS.TABSUBPART $をrdsdt_dtsacctに付与します。select on SYS.TABCOMPART $をrdsdt_dtsacctに付与します。-- V$PDBS特権
    V_$PDBSのselectをrdsdt_dtsacctに付与します。v $データベースで選択をrdsdt_dtsacctに付与します。dba_objectsのselectをrdsdt_dtsacctに付与します。DBA_TAB_COMMENTSの選択をrdsdt_dtsacctに付与します。dba_tab_colsのselectをrdsdt_dtsacctに付与します。select_catalog_roleをrdsdt_dtsacctに付与します。# コンテナデータベース (CDB) のルートコンテナであるCDB$ROOTに切り替えます。 データベースアカウントを作成し、アカウントに権限を付与します。
    ALTER SESSION SETコンテナ=CDB$ROOT;
    # rdsdt_dtsacctという名前のデータベースアカウントを作成し、そのアカウントに権限を付与します。 Oracleデータベースのデフォルト・パラメータを変更する必要があります。 
    alterセッションセット "_ORACLE_SCRIPT"=true;
    rdsdt_dtsacctによるIDENTIFIEDユーザーrdsdt_dtsacctを作成します。rdsdt_dtsacctにセッション作成を付与します。rdsdt_dtsacctへの接続を許可します。v_$ logmnr_contentsのselectをrdsdt_dtsacctに付与します。rdsdt_dtsacctへのログインを許可します。EXECUTE_CATALOG_ROLEをrdsdt_dtsacctに付与します。sys.dbms_logmnrでrdsdt_dtsacctに実行を許可します。
    
    # rdsdt_dtsacctという名前のデータベースアカウントを作成し、そのアカウントに権限を付与します。
    rdsdt_dtsacctによるIDENTIFIEDユーザーrdsdt_dtsacctを作成します。rdsdt_dtsacctにセッション作成を付与します。rdsdt_dtsacctへの接続を許可します。rdsdt_dtsacctにリソースを付与します。V_$LOGMNR_LOGSでrdsdt_dtsacctにselectを付与します。all_objectsのselectをrdsdt_dtsacctに付与します。all_tab_colsのselectをrdsdt_dtsacctに付与します。dba_registryのselectをrdsdt_dtsacctに付与します。rdsdt_dtsacctに任意のテーブルを選択します。rdsdt_dtsacctへのトランザクションの選択を許可します。v $データベースで選択をrdsdt_dtsacctに付与します。dba_objectsのselectをrdsdt_dtsacctに付与します。DBA_TAB_COMMENTSの選択をrdsdt_dtsacctに付与します。dba_tab_colsのselectをrdsdt_dtsacctに付与します。-- v$log特権
    v_$ logのselectをrdsdt_dtsacctに付与します。-- v$logfile特権
    v_$ logfileのselectをrdsdt_dtsacctに付与します。-- v$archived_log特権
    v_$ archived_logでrdsdt_dtsacctにselectを付与します。-- v $パラメータ特権
    v_$ パラメータのselectをrdsdt_dtsacctに付与します。-- v $データベース特権
    v_$ データベースのselectをrdsdt_dtsacctに付与します。-- v$active_instances特権
    v_$ active_instancesのselectをrdsdt_dtsacctに付与します。-- v $インスタンス特権
    v_$ インスタンスのselectをrdsdt_dtsacctに付与します。-- v$logmnr_content権限
    v_$ logmnr_contentsのselectをrdsdt_dtsacctに付与します。sys.USE R$ の選択をrdsdt_dtsacctに付与します。select on SYS.OBJ $をrdsdt_dtsacctに付与します。select on SYS.COL $をrdsdt_dtsacctに付与します。select on SYS.IND $をrdsdt_dtsacctに付与します。select on SYS.ICOL $をrdsdt_dtsacctに付与します。select on SYS.CDEF $をrdsdt_dtsacctに付与します。select on SYS.CCOL $をrdsdt_dtsacctに付与します。select on SYS.TABPART $をrdsdt_dtsacctに付与します。select on SYS.TABSUBPART $をrdsdt_dtsacctに付与します。select on SYS.TABCOMPART $をrdsdt_dtsacctに付与します。rdsdt_dtsacctへのログインを許可します。EXECUTE_CATALOG_ROLEをrdsdt_dtsacctに付与します。sys.dbms_logmnrでrdsdt_dtsacctに実行を許可します。select_catalog_roleをrdsdt_dtsacctに付与します。

手順

  1. DTSコンソールにログインします。

    説明

    データ管理 (DMS) コンソールにリダイレクトされている場合は、imageoldアイコンをクリックして、以前のバージョンのDTSコンソールに移動し。

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

  3. [移行タスク] ページの上部で、移行先クラスターが存在するリージョンを選択します。

  4. ページの右上隅にある [移行タスクの作成] をクリックします。

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

    Migrate data from a self-managed Oracle database to a PolarDB for MySQL cluster

    セクション

    パラメーター

    説明

    N/A

    タスク名

    DTSが自動的に生成するタスク名。 簡単に識別できるように、ビジネス要件を示す名前を指定することを推奨します。 一意の名前を使用する必要はありません。

    移行元データベース

    インスタンスタイプ

    ソースデータベースのアクセス方法。 この例では、パブリックIPアドレスを持つユーザー作成データベースが選択されています。

    説明

    ソースの自己管理データベースが別のタイプの場合は、自己管理データベースに必要な環境を設定する必要があります。 詳細については、「準備の概要」をご参照ください。

    インスタンスリージョン

    インスタンスタイプとして [パブリックIPアドレスを持つユーザー作成データベース] を選択した場合、[インスタンスリージョン] パラメーターを設定する必要はありません。

    説明

    自己管理型Oracleデータベースにホワイトリストが設定されている場合は、DTSサーバーのCIDRブロックをデータベースのホワイトリストに追加する必要があります。 [インスタンスリージョン] の横にある [DTS IP を取得する] をクリックして、DTS サーバーの CIDR ブロックを取得します。

    データベースエンジン

    移行元ディスクのタイプを設定します。 [Oracle] を選択します。

    Hostname or IP Address

    自己管理型Oracleデータベースへの接続に使用されるエンドポイント。 この例では、データベースのパブリックIPアドレスが使用されます。

    ポート番号

    自己管理型Oracleデータベースのサービス・ポート番号。 ポートにはインターネット経由でアクセスできる必要があります。 デフォルト値: 1521

    インスタンスタイプ

    • 自己管理型Oracleデータベースのアーキテクチャ・タイプ。 [非RACインスタンス] を選択した場合、SIDパラメーターを指定する必要があります。

    • RACまたはPDBインスタンスを選択した場合、サービス名パラメーターを指定する必要があります。

    データベースアカウント

    自己管理型Oracleデータベースのアカウント。 アカウントに必要な権限については、「開始前」をご参照ください。

    データベースパスワード

    自己管理型Oracleデータベースのアカウントのパスワード。

    説明

    自己管理型Oracleデータベースに関する情報を指定した後、[データベースパスワード] の横にある [接続のテスト] をクリックして、情報が有効かどうかを確認できます。 情報が有効な場合は、[合格] メッセージが表示されます。 [失敗] メッセージが表示されたら、[失敗] の横にある [チェック] をクリックします。 チェック結果に基づいてソースデータベースのパラメーターを変更します。

    ターゲットデータベース

    インスタンスタイプ

    ターゲットデータベースのインスタンスタイプ。 [PolarDB] を選択します。

    インスタンスリージョン

    ターゲットPolarDB for MySQLクラスターが存在するリージョン。

    PolarDBインスタンスID

    ターゲットPolarDB for MySQLクラスターのID。

    データベースアカウント

    ターゲットPolarDB for MySQLクラスターのデータベースアカウント。 アカウントに必要な権限の詳細については、「開始前」をご参照ください。

    データベースパスワード

    ターゲットPolarDB for MySQLクラスターのデータベースアカウントのパスワード。

    説明

    ターゲットPolarDB for MySQLクラスターに関する情報を指定した後、[データベースパスワード] の横にある [接続のテスト] をクリックして、情報が有効かどうかを確認できます。 情報が有効な場合は、[合格] メッセージが表示されます。 [失敗] メッセージが表示されたら、[失敗] の横にある [チェック] をクリックします。 チェック結果に基づいて、ターゲットデータベースのパラメーターを変更します。

  6. ページの右下隅にある [ホワイトリストと次への設定] をクリックします。

    警告

    DTSサーバーのCIDRブロックがデータベースまたはインスタンスのホワイトリスト、またはECSセキュリティグループルールに自動的または手動で追加されると、セキュリティリスクが発生する可能性があります。 したがって、DTSを使用してデータを移行する前に、潜在的なリスクを理解して認識し、次の対策を含む予防策を講じる必要があります。VPNゲートウェイ、またはSmart Access Gateway。

  7. 移行タイプと移行するオブジェクトを選択します。

    Select the migration types and the objects to be migrated

    パラメータまたは設定

    説明

    移行タイプの選択

    • フルデータ移行のみを実行する場合は、[スキーマ移行] および [フルデータ移行] を選択します。

    • データ移行中にサービスの継続性を確保するには、[スキーマ移行][フルデータ移行] 、および [増分データ移行] を選択します。

    説明

    増分データ移行が選択されていない場合、完全データ移行中にソースデータベースにデータを書き込まないでください。 これにより、ソースデータベースとターゲットデータベース間のデータの整合性が確保されます。

    移行するオブジェクトの選択

    [使用可能] セクションから1つ以上のオブジェクトを選択し、Rightwards arrowアイコンをクリックして、オブジェクトを [選択済み] セクションに移動します。

    説明
    • 移行するオブジェクトとして、列、テーブル、またはデータベースを選択できます。

    • デフォルトでは、オブジェクトが移行先クラスターに移行された後も、オブジェクトの名前は自己管理型Oracleデータベースの名前と同じままになります。 オブジェクト名マッピング機能を使用して、移行先クラスターに移行するオブジェクトの名前を変更できます。 詳細は、オブジェクト名のマッピングをご参照ください。

    オブジェクトの名前を変更するかどうかを指定する

    オブジェクト名マッピング機能を使用して、移行先クラスターに移行するオブジェクトの名前を変更できます。 詳細は、オブジェクト名のマッピングをご参照ください。

    ソースデータベースまたはターゲットデータベースへの接続が失敗した場合のリトライ時間範囲の指定

    デフォルトでは、DTSがソースデータベースまたはターゲットデータベースへの接続に失敗した場合、DTSは次の12時間以内に再試行します。 業務要件に基づいて再試行時間範囲を指定できます。 指定した再試行時間内にDTSがソースデータベースとターゲットデータベースに再接続された場合、DTSはデータ移行タスクを再開します。 それ以外の場合、データ移行タスクは失敗します。

    説明

    DTSがソースデータベースとターゲットデータベースへの再接続を試行する再試行時間内に、DTSインスタンスの料金が請求されます。 業務要件に基づいて再試行時間範囲を指定することを推奨します。 ソースインスタンスとターゲットインスタンスがリリースされた後、できるだけ早くDTSインスタンスをリリースすることもできます。

  8. ページの右下隅にある [事前チェック] をクリックします。

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

    • タスクが事前チェックに合格しなかった場合は、失敗した各項目の横にあるInfo iconアイコンをクリックして詳細を表示できます。

      • 原因に基づいて問題をトラブルシューティングし、事前チェックを再度実行できます。

      • 問題をトラブルシューティングする必要がない場合は、失敗した項目を無視して、再度事前チェックを実行できます。

  9. タスクが事前チェックに合格したら、[次へ] をクリックします。

  10. [設定の確認] ダイアログボックスで、[チャネル仕様] パラメーターを指定し、[データ送信サービス (従量課金) サービス規約] を選択します。

  11. [購入と開始] をクリックして、データ移行タスクを開始します。

    • スキーマ移行とフルデータ移行

      フルデータ移行中は、手動でタスクを停止しないことをお勧めします。 そうしないと、ターゲットデータベースに移行されたデータが不完全になる可能性があります。 データ移行タスクが自動的に停止するまで待つことができます。

    • スキーマ移行、完全データ移行、および増分データ移行

      増分データ移行タスクは自動的に停止しません。 タスクを手動で停止する必要があります。

      重要

      データ移行タスクを手動で停止する適切な時期を選択することを推奨します。 たとえば、オフピーク時やワークロードを移行先クラスターに切り替える前にタスクを停止できます。

      1. 増分データ移行移行タスクが遅延しませんが移行タスクのプログレスバーに表示されるまで待ちます。 その後、ソースデータベースへのデータの書き込みを数分間停止します。 増分データ移行のレイテンシは、プログレスバーに表示され得る。

      2. 増分データ移行のステータスが [移行タスクは遅延なし] に変わるまで待ちます。 次に、移行タスクを手動で停止します。 Stop an incremental data migration task

  12. ワークロードをターゲットのPolarDB for MySQLクラスターに切り替えます。

次のステップ

データの移行に使用されるアカウントには、読み取りおよび書き込み権限が付与されます。 データ移行タスクが完了したら、データベースのセキュリティを確保するために、自己管理型OracleデータベースとPolarDB for MySQLクラスターの両方のアカウントを削除する必要があります。

追加情報

自己管理型のOracleデータベースからPolarDB for MySQLクラスターにデータを移行する場合、DTSは逆方向データ転送をサポートします。 この機能を使用して、PolarDB for MySQLクラスターから自己管理型Oracleデータベースへのデータ変更を同期できます。