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

PolarDB:ECS インスタンス上で稼働する自己管理 MySQL データベースから PolarDB for MySQL クラスターへのデータ同期

最終更新日:Mar 29, 2026

Data Transmission Service (DTS) を使用して、Elastic Compute Service (ECS) インスタンス上で稼働する自己管理 MySQL データベースから PolarDB for MySQL クラスターへ、既存データおよび継続的な変更を含むデータを継続的に同期します。

前提条件

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

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

同期対象オブジェクトに対して、データベースアカウントは以下の権限を有している必要があります。

  • 同期対象のオブジェクトを選択

  • REPLICATION CLIENT

  • REPLICATION SLAVE

  • SHOW VIEW

ターゲットクラスターのアカウント権限

PolarDB for MySQL クラスター上のデータベースアカウントは、同期対象となるすべてのオブジェクトに対して読み取りおよび書き込み権限を有している必要があります。

課金

同期タイプ料金
スキーマ同期およびフルデータ同期無料
インクリメンタルデータ同期有料です。「課金概要」をご参照ください。

サポートされる SQL 操作

タイプ操作
DMLINSERT、UPDATE、DELETE、REPLACE
DDLALTER TABLE、ALTER VIEW、CREATE FUNCTION、CREATE INDEX、CREATE PROCEDURE、CREATE TABLE、CREATE VIEW、DROP INDEX、DROP TABLE、RENAME TABLE、TRUNCATE TABLE
重要

RENAME TABLE 操作により、データの不整合が発生する場合があります。特定のテーブルを同期対象として選択した状態で同期中にそのテーブル名を変更すると、当該テーブルに対する変更のレプリケーションがターゲットクラスターに反映されなくなります。これを防ぐには、個別のテーブルではなく親データベースを同期対象として選択し、名前変更前後ともにそのデータベースが同期対象に含まれていることを確認してください。

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

  • 単方向 1 対 1 同期

  • 単方向 1 対多 同期

  • 単方向カスケード同期

  • 単方向多対 1 同期

詳細については、「同期トポロジ」をご参照ください。

制限事項

トリガーの非互換性

同期対象としてデータベースを選択し、そのデータベースにテーブルを更新するトリガーが含まれている場合、データの不整合が発生する可能性があります。回避策については、「トリガーを含むソースデータベース向けデータ同期タスクの設定」をご参照ください。

プライマリキーの必須要件

ソーステーブルには PRIMARY KEY または一意制約 (UNIQUE constraint) が必要であり、すべてのフィールド値が一意である必要があります。この条件を満たさない場合、ターゲットクラスターに重複レコードが生成される可能性があります。

注意事項

  • 初期完全同期中、DTS はソースから読み取り、ターゲットへ書き込みを行うため、両インスタンスの負荷が高まります。CPU 利用率が両インスタンスとも 30 % 未満であるオフピーク時間帯に同期タスクを実行してください。

  • 同期中は、gh-ost や pt-online-schema-change を使用した DDL 操作を行わないでください。これらのツールを使用すると、タスクが失敗する可能性があります。

  • 初期完全同期中の並列 INSERT 操作により、ターゲットクラスターでテーブルの断片化が発生します。同期完了後、ターゲットの表領域はソースよりも大きくなります。

  • DTS サーバーの CIDR ブロックをホワイトリストまたはセキュリティグループルールに追加すると、セキュリティリスクが発生します。公開インターネット経由でのアクセスに代わり、Express Connect、VPN Gateway、Smart Access Gateway (SAG) などの非公開接続オプションを検討するほか、公開ポートの制限やホワイトリストエントリの定期監査など、予防措置を講じてください。

同期タスクの設定

ステップ 1:DTS インスタンスの購入

DTS インスタンスの購入を行います。購入ページで、以下の設定を行ってください。

  • ソースインスタンス:MySQL

  • ターゲットインスタンス:PolarDB

  • 同期トポロジ:単方向同期

ステップ 2:ソースおよびターゲットデータベースの設定

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

    Data Management (DMS) コンソールにリダイレクトされた場合は、old アイコンを image 内でクリックして、以前のバージョンの DTS コンソールに戻ります。
  2. 左側のナビゲーションウィンドウで、データ同期 をクリックします。

  3. 同期タスク ページの上部で、ターゲットインスタンスが存在するリージョンを選択します。

  4. 同期インスタンスを検索し、タスクの設定操作 列からクリックします。

  5. 以下のパラメーターを使用して、ソースおよびターゲットデータベースを設定します。

    ソースデータベース

    パラメーター説明
    タスク名タスクを識別するための説明的な名前。一意である必要はありません。
    インスタンスタイプECS インスタンス上のユーザー作成データベース を選択します。
    インスタンスリージョン購入ページで選択したソースリージョン。読み取り専用です。
    ECS インスタンス ID自己管理 MySQL データベースをホストする ECS インスタンスの ID。
    データベースタイプMySQL に設定します。読み取り専用です。
    ポート番号自己管理 MySQL データベースのポート番号。
    データベースアカウント前提条件」で記載された必要な権限を持つアカウント。
    データベースパスワードデータベースアカウントのパスワード。

    ターゲットデータベース

    パラメーター説明
    インスタンスタイプPolarDB インスタンス に設定します。読み取り専用です。
    インスタンスリージョン購入ページで選択したターゲットリージョン。読み取り専用です。
    PolarDB インスタンス IDターゲット PolarDB for MySQL クラスターの ID。
    データベースアカウント同期対象オブジェクトに対して読み取りおよび書き込み権限を持つアカウント。
    データベースパスワードデータベースアカウントのパスワード。

ステップ 3:ホワイトリストの設定

右下隅の ホワイトリストの設定と次へ をクリックします。

  • ソースまたはターゲットデータベースが ApsaraDB RDS for MySQL や ApsaraDB for MongoDB などの Alibaba Cloud データベースインスタンスである場合、DTS は自動的に DTS サーバーの CIDR ブロックをインスタンスの IP アドレスホワイトリストに追加します。

  • ソースまたはターゲットデータベースが ECS インスタンス上で稼働する自己管理データベースである場合、DTS は自動的に DTS サーバーの CIDR ブロックを ECS インスタンスのセキュリティグループルールに追加します。データベースが複数の ECS インスタンスにまたがってホストされている場合は、各インスタンスのセキュリティグループルールに DTS の CIDR ブロックを手動で追加してください。

  • ソースまたはターゲットデータベースがデータセンター内またはサードパーティのクラウドサービスプロバイダー (CSP) によって提供される自己管理データベースである場合、DTS サーバーの CIDR ブロックをデータベースの IP アドレスホワイトリストに手動で追加する必要があります。

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

ステップ 4:同期対象の選択と競合処理の設定

以下の設定を行い、次へ をクリックします。

設定説明
既存のターゲットテーブルの処理モード事前チェックおよび中断(デフォルト):DTS は、ターゲットクラスターにソースと同じ名前のテーブルが存在するかをチェックします。競合が検出された場合、事前チェックは失敗します。ターゲットテーブルを削除せずに名前競合を解決するには、「オブジェクト名マッピング」機能をご利用ください。無視:名前競合のチェックをスキップします。初期同期では、DTS は既にターゲットに存在するプライマリキーを持つレコードをスキップします。増分同期では、DTS はそれらのレコードを書き込みます。ソースとターゲットのスキーマが異なる場合、タスクが失敗したり、部分的なデータのみが同期されたりする可能性があります。
同期対象利用可能 セクションからテーブルまたはデータベースを選択し、向右小箭头 をクリックして 選択済み セクションに移動します。データベースを選択した場合、そのデータベース内のすべてのスキーマ変更がターゲットクラスターに同期されます。
データベースおよびテーブルの名前変更オブジェクト名マッピング」を使用して、ターゲットクラスター内のオブジェクト名を変更します。
ソーステーブル DMS_ ONLINE_ DDL 実行時に一時テーブルをターゲットデータベースにコピーしますかData Management (DMS) を使用してソースデータベースでオンライン DDL 操作を実行する場合、これらの操作によって生成された一時テーブルを同期するかどうかを選択します。<br><br>はい: 一時テーブルのデータを同期します。大規模なオンライン DDL 操作により、同期遅延が増加する可能性があります。<br><br>いいえ: 一時テーブルをスキップし、元の DDL のみを同期します。宛先テーブルが一時的にロックされる場合があります。
接続失敗時の再試行時間デフォルトは 720 分(12 時間)です。この期間内に DTS が再接続した場合、タスクは自動的に再開されます。再試行期間内に再接続されなかった場合、タスクは失敗します。再試行中も DTS の課金が発生します。
警告

無視 を選択しても、データ整合性は保証されません。初期同期では、DTS はターゲットに既に存在するプライマリキーを持つレコードをスキップします。増分同期では、DTS はそれらのレコードを書き込みます。ソースとターゲットのスキーマが異なる場合、タスクが失敗したり、不完全なデータが生成されたりする可能性があります。

ステップ 5:初期同期タイプの選択

含める同期タイプを選択します。

Advanced settings

初期スキーマ同期初期完全同期 の両方を選択すると、DTS は増分同期に切り替える前に、既存のスキーマおよびデータをレプリケートします。

ステップ 6:事前チェックの実行と同期の開始

  1. 右下隅の 事前チェック をクリックします。

  2. 事前チェックが失敗した場合、各失敗項目の横にある 提示 アイコンをクリックして詳細を表示し、問題を修正して再度事前チェックを実行してください。問題を修正しない場合は、失敗項目を無視して新しい事前チェックを開始できます。

  3. 事前チェック成功 のメッセージが表示されたら、事前チェック ダイアログボックスを閉じます。同期タスクは自動的に開始されます。

  4. 同期タスク ページでタスクのステータスを監視します。初期同期が完了し、タスクのステータスが 同期中 になるまで待ちます。

    View the status of a data synchronization task

次のステップ