Data Transmission Service (DTS) の変更追跡機能を使用すると、PolarDB for MySQL クラスターからの増分データをリアルタイムでサブスクライブできます。 これにより、軽量なキャッシュ更新、非同期のビジネス分離、ETL ロジックによるリアルタイムのデータ同期を実装できます。 本トピックでは、PolarDB for MySQL の変更追跡チャネルを作成する方法について説明します。
前提条件
ソース PolarDB for MySQL クラスターでバイナリロギング機能が有効化されていること。 詳細については、「バイナリロギングの有効化」をご参照ください。
注意事項
- gh-ost や pt-online-schema-change などのツールによって行われたオンライン DDL 変更は追跡されません。その結果、スキーマの不一致により、クライアントが消費したデータを宛先テーブルに書き込めなくなる可能性があります。
- ソースデータベースが、実行中のデータ移行タスクなど、別のタスクの一部である場合、サブスクリプション範囲外のオブジェクトのデータが追跡される可能性があります。その場合は、クライアントアプリケーションで不要なデータを手動でフィルターする必要があります。
操作手順
- 変更追跡チャネルを購入します。 詳細については、「変更追跡タスクの購入」をご参照ください。説明 チャネルを購入する際は、[ソースデータベース] を PolarDB に設定し、ソース PolarDB for MySQL クラスターがあるリージョンを選択します。
- DTS コンソールにログインします。
- 左側のナビゲーションウィンドウで、変更の記録 をクリックします。
- 変更追跡タスク ページの上部で、変更追跡インスタンスが配置されているリージョンを選択します。
- 購入したチャネルを見つけ、[チャネルの設定] をクリックします。
- ソースデータベースの情報とネットワークタイプを設定します。
セクション パラメーター 説明 N/A タスク名 DTS は自動的にタスク名を生成します。 識別しやすいように、分かりやすい名前を指定することを推奨します。 名前は一意である必要はありません。 ソースデータベース インスタンスタイプ [PolarDB インスタンス] に設定されており、変更できません。 データベースタイプ PolarDB に設定されており、変更できません。 インスタンスリージョン チャネルの購入時に選択したソースリージョンです。 このパラメーターは変更できません。 PolarDB インスタンス ID ソース PolarDB for MySQL クラスターの ID を選択します。 データベースアカウント ソース PolarDB for MySQL クラスターのデータベースアカウントを入力します。 説明 アカウントには、サブスクリプション対象に対する REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW、SELECT 権限が必要です。データベースのパスワード データベースアカウントのパスワードを入力します。 ネットワークタイプ N/A チャネルのネットワークタイプを指定します。 -
[クラシックネットワーク]
ネットワークタイプをクラシックネットワークに設定した場合、他の設定は不要です。クラシックネットワークとは。
-
[独自のネットワーク]
ネットワークタイプを 独自のネットワーク に設定した場合、 独自のネットワーク と vSwitch も選択する必要があります。VPC とは。
説明-
サブスクリプションクライアントがデプロイされている ECS インスタンスと同じネットワークタイプを選択します。 たとえば、ECS インスタンスが VPC 内にある場合、ネットワークタイプとして VPC を選択し、独自のネットワーク と vSwitch を指定します。
-
プライベートネットワーク接続により、レイテンシが最小限に抑えられます。
-
- [ホワイトリストの設定と次へ] をクリックします。
DTS は、対応するリージョンの DTS サーバーの IP アドレスを Alibaba Cloud データベースインスタンスのホワイトリストに自動的に追加します。 DTS サーバーの IP アドレスのリストについては、「DTS サーバーの IP アドレス範囲」をご参照ください。
警告 パブリック CIDR ブロックを追加すると、セキュリティリスクが生じます。強力なパスワードの使用、オープンポートの制限、内部 API の認証、ネットワークアクセスの定期的な確認、Express Connect、VPN Gateway、または Smart Access Gateway を介したプライベートネットワーク接続の使用などの予防措置を講じることで、これらのリスクを軽減してください。 - 追跡するデータの種類とオブジェクトを設定します。
パラメーター 説明 必要なデータの種類 - データの更新
選択したオブジェクトのデータ変更 (INSERT、DELETE、UPDATE 操作) をサブスクライブします。
- スキーマの更新
インスタンス内のすべてのオブジェクトのスキーマ変更 (CREATE、DROP、ALTER 操作) をサブスクライブします。必要なデータはクライアントアプリケーションでフィルターする必要があります。
説明- データベース全体をサブスクリプションオブジェクトとして選択した場合、そのデータベースに追加された新しいオブジェクトへのデータ変更も追跡されます。
- 特定のテーブルをサブスクリプションオブジェクトとして選択した場合、そのテーブルへのデータ変更のみが追跡されます。新しいテーブルを追跡するには、サブスクリプションオブジェクトに追加する必要があります。詳細については、「変更追跡のオブジェクトの変更」をご参照ください。
必要なオブジェクト [必須オブジェクト] ボックスで、追跡するオブジェクトを選択し、 アイコンをクリックして 選択中のオブジェクト ボックスに移動します。
説明 オブジェクトは、データベースまたはテーブルレベルで選択できます。 - データの更新
- 設定が完了したら、ページの右下隅にある [保存して事前チェック] をクリックします。説明
- タスクは、事前チェックに合格した後にのみ開始できます。
- 事前チェックが失敗した場合は、失敗した項目の横にある アイコンをクリックして詳細を表示します。問題を修正した後、再度事前チェックを実行してください。
- 事前チェック ダイアログボックスに事前チェック完了 メッセージが表示されたら、事前チェック ダイアログボックスを閉じます。
次のステップ
設定後、チャネルは約 1分間初期化されます。 初期化が完了したら、次の操作を実行できます: