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

Data Transmission Service:ApsaraDB for MySQL インスタンスから AnalyticDB for MySQL V3.0 クラスタへのデータ同期

最終更新日:May 07, 2025

Data Transmission Service (DTS) を使用して、ApsaraDB for MySQL インスタンスから AnalyticDB for MySQL V3.0 クラスタにデータを同期できます。これは、企業ユーザーがビジネスインテリジェンス (BI) システム、インタラクティブクエリシステム、およびリアルタイムレポートシステムを構築するのに役立ちます。

前提条件

  • 宛先 AnalyticDB for MySQL V3.0 クラスタが作成されていること。詳細については、「クラスタを作成する」をご参照ください。

  • 宛先 AnalyticDB for MySQL V3.0 クラスタの使用可能なストレージ容量が、ソース ApsaraDB for MySQL インスタンスのデータの合計サイズよりも大きいこと。

注意事項

説明
  • スキーマ同期中、DTS はソースデータベースから宛先データベースに外部キーを同期します。

  • 完全同期および増分同期中、DTS はセッションレベルで外部キーに対する制約チェックとカスケード操作を一時的に無効にします。データ同期中にソースデータベースでカスケード更新および削除操作を実行すると、データの不整合が発生する可能性があります。

カテゴリ

説明

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

  • 同期するテーブルには、PRIMARY KEY または UNIQUE 制約が必要であり、すべてのフィールドが一意である必要があります。そうでない場合、宛先データベースに重複したデータレコードが含まれる可能性があります。

  • 同期対象のオブジェクトとしてテーブルを選択し、テーブルの名前変更や列の名前変更などの編集を行う場合は、1 つのデータ同期タスクで最大 1,000 個のテーブルを同期できます。 1,000 個を超えるテーブルを同期するタスクを実行すると、リクエストエラーが発生します。この場合、複数のタスクを構成してテーブルをバッチで同期するか、データベース全体を同期するタスクを構成することをお勧めします。

  • バイナリログについて、次の要件を満たす必要があります。

    • デフォルトでは、ApsaraDB for MySQL インスタンスのバイナリロギング機能は有効になっています。 binlog_row_image パラメータが full に設定されていることを確認してください。そうでない場合、事前チェック中にエラーメッセージが返され、データ同期タスクを開始できません。詳細については、「インスタンスパラメータの変更」をご参照ください。

      重要
      • ソースデータベースが自己管理 MySQL データベースの場合は、バイナリロギング機能を有効にし、binlog_format パラメータを row に、binlog_row_image パラメータを full に設定する必要があります。

      • ソースデータベースがデュアルプライマリクラスタにデプロイされた自己管理 MySQL データベースの場合は、log_slave_updates パラメータを ON に設定する必要があります。これにより、DTS がすべてのバイナリログを取得できるようになります。詳細については、「自己管理 MySQL データベースのアカウントを作成し、バイナリロギングを構成する」をご参照ください。

    • ApsaraDB for MySQL インスタンスのバイナリログは、少なくとも 3 日間保持する必要があります。バイナリログの保存期間を 7 日間に設定することをお勧めします。自己管理 MySQL データベースのバイナリログは、少なくとも 7 日間保存する必要があります。そうでない場合、DTS がバイナリログを取得できないため、データ同期タスクが失敗する可能性があります。例外的な状況では、データの不整合または損失が発生する可能性があります。上記の要件に基づいてバイナリログの保存期間を構成してください。そうでない場合、DTS のサービスレベルアグリーメント (SLA) におけるサービスの信頼性またはパフォーマンスが保証されない場合があります。

      説明

      [保持期間]ApsaraDB for MySQL インスタンスのバイナリログの バイナリログファイルを削除する を設定する方法の詳細については、「バイナリログファイルを管理する」トピックの セクションをご参照ください。

  • データ同期中は、主キーの変更やコメントの追加を行う DDL 文を実行しないでください。ステートメントは有効になりません。たとえば、ALTER TABLE table_name COMMENT='Table comments'; 文は実行しないでください。

  • スキーマ同期および完全同期中は、データベースまたはテーブルのスキーマを変更する DDL 文を実行しないでください。そうでない場合、データ同期タスクは失敗します。

  • データ同期インスタンスの実行中は、物理バックアップから復元されたデータやカスケード操作からのデータなど、バイナリログの変更操作によって生成されたデータは記録も宛先データベースへの同期も行われません。

    説明

    変更データが記録されず、宛先データベースに同期されない場合は、ビジネスに影響がないことを前提に、同期対象のオブジェクトを変更し、データが属するデータベースとテーブルを削除してから、データが属するデータベースとテーブルを同期対象のオブジェクトに追加できます。詳細については、「同期対象のオブジェクトを変更する」をご参照ください。

  • ソースデータベースが MySQL データベース 8.0.23 以降であり、同期するデータに非表示の列が含まれている場合、列のデータを取得できず、データ損失が発生します。

    説明
    • 列を表示するには、ALTER TABLE <table_name> ALTER COLUMN <column_name> SET VISIBLE; コマンドを実行します。詳細については、「Invisible Columns」をご参照ください。

    • 主キーのないテーブルは、自動的に非表示の主キーを生成します。非表示の主キーを表示する必要があります。詳細については、「Generated Invisible Primary Keys」をご参照ください。

その他の制限

  • プレフィックスインデックスは同期できません。ソースデータベースにプレフィックスインデックスが含まれている場合、データ同期タスクが失敗する可能性があります。

  • 宛先データベースでカスタム主キーを指定するか、[データベース、テーブル、および列の構成][主キー列] を構成する必要があります。そうでない場合、データ同期が失敗する可能性があります。

  • AnalyticDB for MySQL の制限により、AnalyticDB for MySQL クラスタ内のノードのディスク容量の使用率が 80% を超えると、例外が発生し、データ同期タスクが遅延します。同期するオブジェクトに基づいて必要なディスク容量を見積もることをお勧めします。宛先クラスタに十分なストレージ容量があることを確認する必要があります。

  • DTS タスクの実行中に宛先 AnalyticDB for MySQL V3.0 クラスタがバックアップされている場合、DTS タスクは失敗します。

  • データを同期する前に、データ同期がソースデータベースと宛先データベースのパフォーマンスに与える影響を評価してください。オフピーク時にデータを同期することをお勧めします。初期完全同期中、DTS はソースデータベースと宛先データベースの読み取りおよび書き込みリソースを使用します。これにより、データベースサーバーの負荷が増加する可能性があります。

  • 初期完全同期中、同時 INSERT 操作により、宛先データベースのテーブルで断片化が発生します。初期完全同期が完了すると、宛先データベースで使用されている表領域のサイズはソースデータベースのサイズよりも大きくなります。

  • データベース全体ではなく、1 つ以上のテーブルを同期対象のオブジェクトとして選択した場合は、データ同期中に pt-online-schema-change などのツールを使用してテーブルでオンライン DDL 操作を実行しないでください。そうでない場合、データの同期に失敗する可能性があります。

    Data Management (DMS) を使用して、オンライン DDL 操作を実行できます。詳細については、「ロックフリーの DDL 操作を実行する」をご参照ください。

  • 他のソースからのデータが宛先 AnalyticDB for MySQL クラスタに書き込まれていない場合は、データ同期中に DMS を使用してソーステーブルでオンライン DDL 操作を実行できます。詳細については、「ロックフリーの DDL 操作を実行する」をご参照ください。

  • データ同期中に他のソースからのデータが宛先データベースに書き込まれると、ソースデータベースと宛先データベースの間でデータの不整合が発生します。たとえば、他のソースからのデータが宛先データベースに書き込まれている間に DMS を使用してオンライン DDL 文を実行すると、宛先データベースでデータ損失が発生する可能性があります。

  • ターゲットデータベースで DDL 文の実行に失敗した場合でも、DTS タスクは実行を続けます。実行に失敗した DDL 文は、タスクログで確認できます。タスクログの表示方法の詳細については、「タスクログを表示する」をご参照ください。

  • ソースデータベースが EncDB 機能が有効になっている ApsaraDB for MySQL インスタンスの場合、完全同期を実行できません。

    説明

    透過的データ暗号化 (TDE) 機能が有効になっている ApsaraDB for MySQL インスタンスは、スキーマ同期、完全同期、および増分同期をサポートしています。

  • DTS タスクの実行に失敗した場合、DTS テクニカルサポートは 8 時間以内にタスクの復元を試みます。復元中、タスクが再起動され、タスクのパラメータが変更される場合があります。

    説明

    タスクのパラメータのみが変更される可能性があります。データベースのパラメータは変更されません。 変更される可能性のあるパラメータには、「DTS インスタンスのパラメータを変更する」トピックの「インスタンスパラメータを変更する」セクションのパラメータが含まれますが、これらに限定されません。

特別なケース

  • ソースデータベースが自己管理 MySQL データベースの場合は、次の点に注意してください。

    • データ同期タスクの実行中にソースデータベースでプライマリ/セカンダリスイッチオーバーを実行すると、タスクは失敗します。

    • DTS は、宛先データベースの最後に同期されたデータのタイムスタンプとソースデータベースの現在のタイムスタンプに基づいて同期レイテンシを計算します。ソースデータベースで DML 操作が長時間実行されない場合、同期レイテンシが不正確になる可能性があります。データ同期タスクのレイテンシが高すぎる場合は、ソースデータベースで DML 操作を実行してレイテンシを更新できます。

      説明

      データベース全体を同期対象のオブジェクトとして選択した場合は、ハートビートテーブルを作成できます。ハートビートテーブルは毎秒更新またはデータを受信します。

    • DTS は、バイナリログファイルの位置を進めるために、スケジュールどおりにソースデータベースで CREATE DATABASE IF NOT EXISTS 'test' 文を実行します。

  • ソースデータベースが ApsaraDB for MySQL インスタンスの場合は、次の点に注意してください。

    • 読み取り専用 ApsaraDB for MySQL 5.6 インスタンスなど、トランザクションログを記録しない ApsaraDB for MySQL インスタンスは、ソースデータベースとして使用できません。

    • DTS は、バイナリログファイルの位置を進めるために、スケジュールどおりにソースデータベースで CREATE DATABASE IF NOT EXISTS 'test' 文を実行します。

課金

同期タイプタスク構成料金
スキーマ同期と完全同期無料。
増分同期有料。詳細については、「課金の概要」をご参照ください。

サポートされている同期トポロジ

  • 一方向 1 対 1 同期

  • 一方向 1 対多同期

  • 一方向多対 1 同期

同期可能な SQL 操作

操作タイプ

SQL 文

DML

INSERT、UPDATE、および DELETE

説明

宛先 AnalyticDB for MySQL V3.0 クラスタにデータが書き込まれると、UPDATE 文は自動的に REPLACE INTO 文に変換されます。 UPDATE 文が主キーで実行された場合、UPDATE 文は DELETE 文と INSERT 文に変換されます。

DDL

CREATE TABLE、DROP TABLE、RENAME TABLE、TRUNCATE TABLE、ADD COLUMN、MODIFY COLUMN、および DROP COLUMN

警告

データ同期中にソーステーブルのフィールドのデータ型が変更された場合、エラーメッセージが返され、データ同期タスクが中断されます。問題のトラブルシューティングを行うには、次の手順を実行できます。

  1. 宛先 AnalyticDB for MySQL V3.0 クラスタにデータを同期するときにソーステーブルのフィールドのデータ型が変更された場合、データ同期タスクは失敗します。

  2. ソーステーブル名が customer であるとします。宛先 AnalyticDB for MySQL V3.0 クラスタに customer_new という名前のテーブルを作成します。新しいテーブルのスキーマが customer テーブルと同じであることを確認します。

  3. INSERT INTO SELECT 文を実行して、customer テーブルのデータをコピーし、customer_new テーブルに挿入します。これにより、2 つのテーブルのデータの整合性が確保されます。

  4. customer テーブルの名前を変更するか、削除します。次に、customer_new テーブルの名前を customer に変更します。

  5. DTS コンソールでデータ同期タスクを再起動します。

手順

  1. 次のいずれかの方法を使用して [データ同期] ページに移動し、データ同期インスタンスが存在するリージョンを選択します。

    DTS コンソール

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

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

    3. ページの左上隅で、データ同期インスタンスが存在するリージョンを選択します。

    DMS コンソール

    説明

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

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

    2. 上部のナビゲーションバーで、[データ + AI] にポインタを移動し、[DTS (DTS)] > [データ同期] を選択します。

    3. データ同期タスク の右側にあるドロップダウンリストから、データ同期インスタンスが存在するリージョンを選択します。

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

  3. ソースデータベースと宛先データベースを構成します。次の表にパラメータを示します。

    警告

    ソースデータベースと宛先データベースを構成した後、ページに表示される [制限] を読んでおくことをお勧めします。そうでない場合、タスクが失敗したり、データの不整合が発生したりする可能性があります。

    セクション

    パラメーター

    説明

    該当なし

    タスク名

    DTS タスクの名前です。DTS によってタスク名が自動的に生成されます。タスクを識別しやすい説明的な名前を指定することをお勧めします。一意のタスク名を指定する必要はありません。

    ソースデータベース

    既存の接続を選択

    • DTS に登録されているデータベースインスタンスを使用する場合は、ドロップダウンリストからインスタンスを選択します。 DTS は、インスタンスの次のデータベースパラメーターを自動的に入力します。 詳細については、「データベース接続を管理する」をご参照ください。

      説明

      DMS コンソールで、[DMS データベースインスタンスを選択] ドロップダウンリストからデータベースインスタンスを選択できます。

    • インスタンスを DTS に登録できなかった場合、または DTS に登録されているインスタンスを使用する必要がない場合は、次のデータベース情報を設定する必要があります。

    データベースタイプ

    ソースデータベースの種類です。[MySQL] を選択します。

    アクセス方法

    ソースデータベースのアクセス方法です。[Alibaba Cloud インスタンス] を選択します。

    インスタンスリージョン

    ソース ApsaraDB RDS for MySQL インスタンスが存在するリージョン。

    Alibaba Cloudアカウント全体でのデータの複製

    Alibaba Cloud アカウント間でデータを同期するかどうかを指定します。この例では、[いいえ] が選択されています。

    RDS インスタンス ID

    ソース ApsaraDB RDS for MySQL インスタンスの ID です。

    データベースアカウント

    ソース ApsaraDB RDS for MySQL インスタンスのデータベースアカウント。アカウントには、同期対象のオブジェクトに対する SELECT 権限と、REPLICATION CLIENT 権限および REPLICATION SLAVE 権限が必要です。

    データベースパスワード

    データベースへのアクセスに使用するパスワードです。

    暗号化

    データベースへの接続を暗号化するかどうかを指定します。ビジネス要件に基づいて、[非暗号化] または [SSL 暗号化] を選択できます。このパラメーターを [SSL 暗号化] に設定する場合、DTS タスクを構成する前に、ApsaraDB RDS for MySQL インスタンスの SSL 暗号化を有効にする必要があります。詳細については、「クラウド証明書を使用して SSL 暗号化を有効にする」をご参照ください。

    宛先データベース

    既存の接続を選択

    • DTS に登録されているデータベースインスタンスを使用する場合は、ドロップダウンリストからインスタンスを選択します。 DTS は、インスタンスの次のデータベースパラメーターを自動的に入力します。 詳細については、「データベース接続を管理する」をご参照ください。

      説明

      DMS コンソールで、[DMS データベースインスタンスを選択] ドロップダウンリストからデータベースインスタンスを選択できます。

    • インスタンスを DTS に登録できなかった場合、または DTS に登録されているインスタンスを使用する必要がない場合は、次のデータベース情報を設定する必要があります。

    データベースタイプ

    ターゲットデータベースの種類です。[AnalyticDB MySQL 3.0] を選択します。

    アクセス方法

    ターゲットデータベースのアクセス方法。 [Alibaba Cloud インスタンス] を選択します。

    インスタンスリージョン

    宛先の AnalyticDB for MySQL V3.0 クラスタが存在するリージョンです。

    インスタンス ID

    宛先 AnalyticDB for MySQL V3.0 クラスターのIDです。

    データベースアカウント

    宛先 AnalyticDB for MySQL V3.0 クラスターのデータベースアカウント。アカウントには、読み取りと書き込みの権限が必要です。

    データベースパスワード

    データベースへのアクセスに使用するパスワードです。

  4. ページの下部にある 接続をテストして続行 をクリックします。

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

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

  5. 同期するオブジェクトを設定します。

    1. オブジェクト設定 ステップで、同期するオブジェクトを設定します。

      パラメーター

      説明

      同期タイプ

      同期タイプ。デフォルトでは、[増分データ同期] が選択されています。[スキーマ同期][完全データ同期] も選択する必要があります。事前チェックが完了すると、DTS は選択したオブジェクトの既存データをソースデータベースから宛先クラスタに同期します。既存データは、後続の増分同期の基礎となります。

      説明

      [完全データ同期] が選択されている場合、CREATE TABLE 文を実行して作成されたテーブルのスキーマとデータをターゲットデータベースに同期できます。

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

      • エラーの事前チェックと報告: ターゲットデータベースにソースデータベースのテーブルと同じ名前のテーブルが含まれているかどうかを確認します。ソースデータベースとターゲットデータベースに同じテーブル名のテーブルが含まれていない場合、事前チェックは合格です。それ以外の場合、事前チェック中にエラーが返され、データ同期タスクを開始できません。

        説明

        ソースデータベースとターゲットデータベースに同じ名前のテーブルが含まれており、ターゲットデータベースのテーブルを削除または名前変更できない場合は、オブジェクト名マッピング機能を使用して、ターゲットデータベースに同期されるテーブルの名前を変更できます。詳細については、「データベース、テーブル、および列の名前マッピング」をご参照ください。

      • エラーを無視して続行: ソースデータベースとターゲットデータベースで同じテーブル名の事前チェックをスキップします。

        警告

        エラーを無視して続行 を選択すると、データの不整合が発生し、ビジネスが潜在的なリスクにさらされる可能性があります。

        • ソースデータベースとターゲットデータベースのスキーマが同じで、ターゲットデータベースのデータレコードのプライマリキー値または一意キー値がソースデータベースのデータレコードと同じ場合:

          • 完全データ同期中、DTS はデータレコードをターゲットデータベースに同期しません。ターゲットデータベースの既存のデータレコードは保持されます。

          • 増分データ同期中、DTS はデータレコードをターゲットデータベースに同期します。ターゲットデータベースの既存のデータレコードは上書きされます。

        • ソースデータベースとターゲットデータベースのスキーマが異なる場合、データの初期化に失敗する可能性があります。この場合、一部の列のみが同期されるか、データ同期タスクが失敗します。注意して進めてください。

      同期する DDL および DML 操作

      同期するインスタンスレベルの DDL 操作と DML 操作を選択します。詳細については、このトピックの「同期可能な SQL 操作」セクションをご参照ください。

      説明

      特定のデータベースまたはテーブルで実行される SQL 操作を選択するには、[選択済みオブジェクト] セクションでオブジェクトを右クリックします。表示されるダイアログボックスで、同期する SQL 操作を選択します。

      テーブルの結合

      • [はい]: オンライントランザクション処理 (OLTP) シナリオでは、ビジネス テーブルへの応答を高速化するためにシャーディングが実装されています。オンライン分析処理 (OLAP) シナリオでは、1 つのテーブルに大量のデータを格納できます。これにより、SQL クエリがより効率的になります。同じスキーマを持つ複数のソース テーブルを 1 つのターゲット テーブルにマージできます。この機能を使用すると、ソース データベースの複数のテーブルからターゲット データベースの 1 つのテーブルにデータを同期できます。詳細については、「複数テーブルのマージ機能を有効にする」をご参照ください。

        説明
        • ソース データベースから複数のテーブルを選択した後、オブジェクト名マッピング機能を使用して、これらのテーブルの名前をターゲット テーブルの名前に変更する必要があります。詳細については、「データベース、テーブル、および列の名前マッピング」をご参照ください。

        • DTS は、__dts_data_source という名前の列をターゲット テーブルに追加します。この列は、データソースを記録するために使用されます。この列のデータ型は TEXT です。この列の値は、データ同期インスタンス ID:ソースデータベース名:ソーススキーマ名:ソーステーブル名 の形式です。これにより、DTS は各ソース テーブルを識別できます。例: dts********:dtstestdata:testschema:customer1

        • このパラメーターを [はい] に設定すると、タスクで選択されたすべてのソース テーブルがターゲット テーブルにマージされます。特定のソース テーブルをマージする必要がない場合は、これらのテーブルに対して個別のデータ同期タスクを作成できます。

        警告

        ソースデータベースまたはテーブルのスキーマを変更する DDL 操作は実行しないことをお勧めします。そうしないと、データの不整合が発生するか、データ同期タスクが失敗します。

      • [いいえ]: この値はデフォルトで選択されています。

      移行先インスタンスでのオブジェクト名の大文字化

      宛先インスタンスのデータベース名、テーブル名、および列名の大文字と小文字の区別。デフォルトでは、[DTS デフォルトポリシー] が選択されています。オブジェクト名の大文字と小文字の区別がソースデータベースまたはターゲットデータベースと一致するように、他のオプションを選択できます。詳細については、「宛先インスタンスのオブジェクト名の大文字と小文字の区別を指定する」をご参照ください。

      ソースオブジェクト

      ソースオブジェクト セクションから 1 つ以上のオブジェクトを選択し、向右 アイコンをクリックして、選択中のオブジェクト セクションにオブジェクトを追加します。

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

      • 同期するオブジェクトとしてデータベースを選択した場合、DTS は次のデフォルトルールに基づいてデータを同期します。

        • ソースデータベースで同期するテーブルに、単一列のプライマリキーまたは複合プライマリキーなどのプライマリキーがある場合、プライマリキー列は分散キーとして指定されます。

        • ソースデータベースで同期するテーブルにプライマリキーがない場合、ターゲットテーブルに自動採番主キー列が自動的に生成されます。これにより、ソースデータベースとターゲットデータベース間でデータの不整合が発生する可能性があります。

      選択中のオブジェクト

      説明
      • 特定のデータベースまたはテーブルで実行される SQL 操作を選択するには、選択中のオブジェクト セクションでオブジェクトを右クリックします。表示されるダイアログボックスで、同期する SQL 操作を選択します。詳細については、このトピックの「同期可能な SQL 操作」セクションをご参照ください。

      • データをフィルタリングする WHERE 条件を指定するには、選択中のオブジェクト セクションでオブジェクトを右クリックします。表示されるダイアログボックスで、条件を指定します。詳細については、「フィルター条件を指定する」をご参照ください。

    2. 次へ:詳細設定 をクリックして、詳細設定を行います。

      パラメーター

      説明

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

      デフォルトでは、専用クラスタを指定しない場合、DTS はタスクを共有クラスタにスケジュールします。データ同期タスクの安定性を向上させるには、専用クラスタを購入します。詳細については、「DTS 専用クラスタとは」をご参照ください。

      移行元テーブルで生成された Online DDL ツールの一時テーブルを移行先データベースにコピーします。

      DMS または gh-ost ツールを使用してソースデータベースでオンライン DDL 操作を実行する場合、オンライン DDL 操作によって生成された一時テーブルのデータを同期するかどうかを指定できます。

      重要

      pt-online-schema-change などのツールを使用して、ソースデータベースでオンライン DDL 操作を実行することはできません。そうしないと、DTS タスクが失敗します。

      • [はい]: DTS は、オンライン DDL 操作によって生成された一時テーブルのデータを同期します。

        説明

        オンライン DDL 操作によって大量のデータが生成される場合、データ同期タスクの完了に時間がかかることがあります。

      • [いいえ、DMS オンライン DDL に適応]: DTS は、オンライン DDL 操作によって生成された一時テーブルのデータを同期しません。DMS を使用して実行される元の DDL 操作のみが同期されます。

        説明

        このオプションを選択すると、ターゲットデータベースのテーブルがロックされる可能性があります。

      • [いいえ、gh-ost に適応]: DTS は、オンライン DDL 操作によって生成された一時テーブルのデータを同期しません。gh-ost ツールを使用して実行される元の DDL 操作のみが同期されます。デフォルトまたはカスタムの正規表現を使用して、gh-ost ツールのシャドウテーブルと不要なテーブルを除外できます。

        説明

        このオプションを選択すると、ターゲットデータベースのテーブルがロックされる可能性があります。

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

      接続失敗時の再試行時間の範囲。データ同期タスクの開始後にソースデータベースまたはターゲットデータベースへの接続に失敗した場合、DTS は指定された時間範囲内で直ちに接続を再試行します。有効値: 10 ~ 1440。単位: 分。デフォルト値: 720。このパラメーターは 30 より大きい値に設定することをお勧めします。DTS が指定された時間範囲内にソースデータベースとターゲットデータベースに再接続すると、DTS はデータ同期タスクを再開します。それ以外の場合、データ同期タスクは失敗します。

      説明
      • 同じソースデータベースまたはターゲットデータベースを持つ複数のデータ同期タスクに異なる再試行時間の範囲を指定した場合、最も短い再試行時間の範囲が優先されます。

      • DTS が接続を再試行すると、DTS インスタンスの料金が発生します。ビジネス要件に基づいて再試行時間の範囲を指定することをお勧めします。また、ソースインスタンスと宛先インスタンスが解放された後、できるだけ早く DTS インスタンスを解放することもできます。

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

      その他の問題の再試行時間の範囲。たとえば、データ同期タスクの開始後に DDL 操作または DML 操作の実行に失敗した場合、DTS は指定された時間範囲内で直ちに操作を再試行します。有効値: 1 ~ 1440。単位: 分。デフォルト値: 10。このパラメーターは 10 より大きい値に設定することをお勧めします。指定された時間範囲内で失敗した操作が正常に実行されると、DTS はデータ同期タスクを再開します。それ以外の場合、データ同期タスクは失敗します。

      重要

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

      完全同期レートを制限するかどうか

      完全データ同期中、DTS はソースデータベースとターゲットデータベースの読み取りリソースと書き込みリソースを使用します。これにより、データベースサーバーの負荷が増加する可能性があります。完全データ同期タスクの 1 秒あたりのソースデータベースのクエリ率 QPS1 秒あたりの完全移行の行数 RPS、および 1 秒あたりの完全移行データ量 (MB) BPS パラメーターを設定して、ターゲットデータベースサーバーの負荷を軽減できます。

      説明

      同期タイプ パラメーターで 完全データ同期 が選択されている場合にのみ、このパラメーターを設定できます。

      増分同期率を制限するかどうか

      増分データ同期の調整を有効にするかどうかを指定します。ビジネス要件に基づいて、増分データ同期の調整を有効にできます。調整を設定するには、1 秒あたりの増分同期の行数 RPS パラメーターと 1 秒あたりの増分同期データ量 (MB) BPS パラメーターを設定する必要があります。これにより、ターゲットデータベースサーバーの負荷が軽減されます。

      環境タグ

      DTS インスタンスを識別するために使用される環境タグ。ビジネス要件に基づいて環境タグを選択できます。この例では、このパラメーターを設定する必要はありません。

      ETL の設定

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

      監視とアラート

      データ同期タスクのアラートを設定するかどうかを指定します。タスクが失敗した場合、または同期遅延が指定されたしきい値を超えた場合、アラート連絡先に通知が送信されます。有効値:

      • [いいえ]: アラートを有効にしません。

      • [はい]: アラートを設定します。この場合、アラートしきい値と アラート通知設定 も設定する必要があります。詳細については、「監視とアラートの設定」トピックの「DTS タスクの作成時に監視とアラートを設定する」セクションをご参照ください。

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

      データ検証機能の使用方法の詳細については、「データ検証タスクを設定する」をご参照ください。

    4. オプション: ページの下部にある [次へ: データベースとテーブルのフィールドの設定] をクリックします。表示されるページで、ターゲットデータベースで同期するテーブルの タイププライマリキー列の追加配布キーパーティションキーパーティションルールパーティションライフサイクル などのパーティションキー情報を設定します。

      説明
      • 同期タイプ 同期タイプ パラメーターで [スキーマ同期] を選択した場合にのみ、この手順を実行できます。パラメーターを変更するには、[定義ステータス] パラメーターを [すべて] に設定します。

      • [プライマリキー列] フィールドでは、複数の列を指定して複合プライマリキーを形成できます。この場合、1 つ以上の列を 配布キー および パーティションキー として指定する必要があります。詳細については、「CREATE TABLE」をご参照ください。

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

    • DTS タスクを設定するために関連 API 操作を呼び出すときに指定するパラメーターを表示するには、次:タスク設定の保存と事前チェック にポインターを移動し、OpenAPI パラメーターのプレビュー をクリックします。

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

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

    • データ同期タスクが事前チェックに失敗した場合は、失敗した各項目の横にある [詳細の表示] をクリックします。チェック結果に基づいて原因を分析した後、問題をトラブルシューティングします。その後、事前チェックを再実行します。

    • 事前チェック中に項目に対してアラートがトリガーされた場合:

      • アラート項目を無視できない場合は、失敗した項目の横にある [詳細の表示] をクリックして、問題をトラブルシューティングします。次に、事前チェックを再度実行します。

      • アラート項目を無視できる場合は、[アラートの詳細の確認] をクリックします。 [詳細の表示] ダイアログボックスで、[無視] をクリックします。表示されるメッセージで、[OK] をクリックします。次に、[再チェック] をクリックして、事前チェックを再度実行します。アラート項目を無視すると、データの不整合が発生し、ビジネスが潜在的なリスクにさらされる可能性があります。

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

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

    2. [購入] ページで、データ同期インスタンスの課金方法とインスタンスクラスのパラメーターを設定します。次の表でパラメーターについて説明します。

      セクション

      パラメーター

      説明

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

      課金方法

      • サブスクリプション: データ同期インスタンスを作成するときにサブスクリプション料金を支払います。サブスクリプション課金方法は、長期使用の場合、従量課金方法よりも費用対効果が高くなります。

      • 従量課金: 従量課金インスタンスは時間単位で課金されます。従量課金方法は、短期使用に適しています。従量課金データ同期インスタンスが不要になった場合は、インスタンスをリリースしてコストを削減できます。

      リソースグループ設定

      データ同期インスタンスが属するリソースグループ。デフォルト値: [デフォルトのリソースグループ]。詳細については、「リソース管理とは」をご参照ください。

      インスタンスクラス

      DTS は、同期速度が異なるインスタンスクラスを提供します。ビジネス要件に基づいてインスタンスクラスを選択できます。詳細については、「データ同期インスタンスのインスタンスクラス」をご参照ください。

      サブスクリプション期間

      サブスクリプション課金方法を選択した場合は、サブスクリプション期間と作成するデータ同期インスタンスの数を入力します。サブスクリプション期間は、1 ~ 9 か月、1 年、2 年、3 年、または 5 年です。

      説明

      このパラメーターは、サブスクリプション 課金方法を選択した場合にのみ使用できます。

    3. [Data Transmission Service (従量課金) サービス規約] を読んで選択します。

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

      タスクの進行状況は、タスクリストで確認できます。