__tencentdb__を書き込み、トランザクションマークIDなどのメタ情報を記録します。ソースデータベースにおける__tencentdb__への読み書き権限を確保する必要があります。__tencentdb__は削除されません。__tencentdb__システムデータベースが占有する容量は非常に小さく、ソースデータベースのストレージ容量の約1000分の1から1万分の1です(例えば、ソースデータベースが50GBの場合、__tencentdb__システムデータベースは約5MB~50MBです)。また、シングルスレッドと接続待機メカニズムを採用しているため、ソースデータベースのパフォーマンスにはほとんど影響を与えず、リソースを奪い合うこともありません。GRANT RELOAD,LOCK TABLES,REPLICATION CLIENT,REPLICATION SLAVE,SHOW VIEW,PROCESS,SELECT ON *.* TO 'アカウント'@'%' IDENTIFIED BY 'パスワード';GRANT ALL PRIVILEGES ON `__tencentdb__`.* TO 'アカウント'@'%';FLUSH PRIVILEGES;
ALTER VIEWステートメントはサポートされていません。このステートメントが検出された場合、タスクはスキップされ、同期されません。STATEMENTのデータを書き込まないでください。操作タイプ | SQL操作文 |
DML | INSERT、UPDATE、DELETE |
DDL | CREATE DATABASE、DROP DATABASE、ALTER DATABASE、CREATE TABLE、ALTER TABLE、DROP TABLE、TRUNCATE TABLE、CREATE VIEW、DROP VIEW、CREATE INDEX、DROP INDEX |
タイプ | 環境要件 |
ソースデータベース要件 | ソースデータベースとターゲットデータベースのネットワークが接続できる必要があります。 インスタンスパラメータの要件: ソースデータベースのserver_idパラメータは手動で設定する必要があります。また、値を0に設定することはできません。 ソースデータベースのテーブルのrow_formatをFIXEDに設定することはできません。 ソースデータベース変数connect_timeoutの設定値は10より大きい必要があります。 Binlogパラメータの要件: ソース側のlog_bin変数はONに設定する必要があります。 ソース側のbinlog_format変数はROWに設定する必要があります。 ソース側のbinlog_row_image変数はFULLに設定する必要があります。 MySQL 5.6以降のバージョンでは、gtid_mode変数がONでない場合に警告が表示されます。gtid_modeを有効にすることをお勧めします。 do_db、ignore_dbを設定することはできません。 ソースインスタンスがレプリカの場合、log_slave_updates変数をONに設定する必要があります。 ソースデータベースのBinlogログは少なくとも3日以上保持することをお勧めします。そうしないと、タスクの一時停止/中断時間がBinlogログの保持時間を超えた場合、タスクの再開ができなくなり、タスクが失敗する可能性があります。 外部キー依存関係: 外部キー依存関係はNO ACTION、RESTRICTの2種類に設定することをお勧めします。他のタイプはデータの一貫性の結果に影響を与える可能性があります。 一部のデータベース・テーブルを同期する場合、外部キー依存関係のあるテーブルはすべて揃っている必要があります。 環境変数innodb_stats_on_metadataはOFFに設定する必要があります。 |
ターゲットCkafka要件 | ターゲットCkafkaは正常に接続できます。 ターゲットCkafkaで設定するメッセージサイズの上限は、ソースデータベースのテーブル内の単一行データの最大値より大きくする必要があります。 |
パラメータ | 説明 |
課金モデル | 年額・月額と従量課金をサポートします。 |
ソースインスタンスタイプ | MySQLを選択します。購入後は変更できません。 |
ソースインスタンスの地域 | ソースインスタンスが所在する地域を選択してください。購入後は変更できません。ソースデータベースが自己構築データベースの場合、自己構築地域に最も近い地域を選択してください。 |
ターゲットインスタンスタイプ | Kafkaを選択します。購入後は変更できません。 |
ターゲットインスタンスの地域 | 目的インスタンスの所在地域を選択します。購入後は変更できません。 |
仕様 |
設定項目 | パラメータ | 説明 |
タスク設定 | タスク名 | DTSはタスク名を自動生成します。ユーザーは実際の状況に応じて設定できます。 |
| 実行モード | 即時実行と定時実行の2つのモードをサポートします。 |
ソースインスタンスの設定 | ソースインスタンスタイプ | 購入時に選択したソースインスタンスタイプは変更できません。 |
| ソースインスタンスの地域 | 購入時に選択したソースインスタンスの所在地域は変更できません。 |
| アクセスタイプ | 公衆網:ソースデータベースにはパブリックIPアドレスでアクセスできます。 CVM自社構築:ソースデータベースはTencent CVM上に配置されています。 Direct Connect:ソースデータベースはDirect Connectを介してTencent Cloud VPCと接続できます。 VPNアクセス:ソースデータベースはVPN Connectionsを介してTencent Cloud VPCと接続できます。 クラウドデータベース:ソースデータベースはTencent Cloudデータベースインスタンスに属します。 CCN:ソースデータベースはCCNを介してTencent Cloud VPCと接続できます。 |
| パブリックネットワーク | ホストアドレス:ソースデータベースのIPアドレスまたはドメイン名。 ポート:ソースデータベースが使用するポート。 |
| CVMでの自己構築 | CVMインスタンス:CVMのインスタンスID。 ポート:ソースデータベースが使用するポート。 |
| Direct Connect (DC) | VPC Direct Connectゲートウェイ/:Direct Connectアクセス時はVPC Direct Connectゲートウェイのみサポートされます。ゲートウェイに関連付けられたネットワークタイプを確認してください。 VPC:VPC Direct ConnectゲートウェイおよびVPNゲートウェイに関連付けられたVPCとサブネットを選択します。 ホストアドレス:ソースデータベースのIPアドレス。 ポート:ソースデータベースが使用するポート。 |
| VPNアクセス | VPNゲートウェイ:VPNゲートウェイ。VPNゲートウェイを介してアクセスするVPNゲートウェイインスタンスを選択してください。 VPC:VPC Direct ConnectゲートウェイおよびVPNゲートウェイに関連付けられたVPCとサブネットを選択します。 ホストアドレス:ソースデータベースのIPアドレス。 ポート:ソースデータベースが使用するポート。 |
| クラウドデータベース | クラウドデータベースインスタンス:ソースデータベースのインスタンスID。 |
| CCN | ホストアドレス:ソースデータベースのホストIPアドレス。 ポート:ソースデータベースが使用するポート。 VPC CCN:CCNインスタンス名。 アクセスVPC:アクセスVPCとは、CCN内でサブスクリプションリンクに接続されるVPCを指します。CCNに関連付けられているすべてのVPCの中から、ソースデータベースが属するVPC以外のVPCを選択してください。
例えば、広州地域のデータベースがソースデータベースの場合、アクセスVPCには成都VPCや上海VPCなど、他の地域を選択します。 サブネット:選択済みのVPCネットワークのサブネット名。 アクセスVPC地域:タスク購入時に選択したソースデータベースの地域とアクセスVPCの地域は一致している必要があります。一致していない場合、DTSはタスク購入時に選択したソースデータベースの地域をアクセスVPCの地域に変更します。 |
| アカウント/パスワード | アカウント/パスワード:ソースデータベースのアカウント、パスワード。 |
ターゲットインスタンスの設定 | ターゲットインスタンスタイプ | 購入時に選択したターゲットインスタンスタイプは変更できません。 |
| ターゲットインスタンスの地域 | 購入時に選択したターゲットインスタンスの地域は変更できません。 |
| アクセスタイプ | お客様のシナリオに応じて選択してください。このシナリオでは「Ckafkaインスタンス」を選択します。 |
| インスタンスID | ターゲットインスタンスIDを選択します。 |
設定項目 | パラメータ | 説明 |
データ初期化オプション | 初期化タイプ | 構造初期化:同期タスクの実行時に、まずソースインスタンスのテーブル構造をターゲットインスタンスに初期化します。 全量データ初期化:同期タスクの実行時に、まずソースインスタンスのデータをターゲットインスタンスに初期化します。全量データ初期化のみを選択した場合、ユーザーは事前にターゲットデータベースにテーブル構造を作成しておく必要があります。 デフォルトでは両方ともチェックされており、実際の状況に応じてキャンセルできます。 |
| Kafka に配信するデータ形式 | Avroはバイナリ形式で、消費効率がより高くなっています。JSONは軽量のテキスト形式で、よりシンプルで使いやすくなっています。 |
データ同期からKafkaへのポリシー | Topic同期ポリシー | カスタムTopic名:配信するTopic名を設定します。設定後、ターゲット側のKafkaがそのTopicを自動的に作成します。実現効果として、同期データをそのTopic配下の異なるパーティションにランダムに配信します。ターゲット側のKafkaでTopicの作成に失敗した場合、タスクはエラーを報告します。 単一Topicへの集中配信:ターゲット側に既存のTopicを選択し、複数のパーティションポリシーに従って配信します。単一パーティション、テーブル名によるパーティショニング、テーブル名+PKによるパーティショニングをサポートし、異なるパーティションに配信します。 |
| カスタムTopic名ルール | ユーザーが複数のルールを追加すると、カスタムTopicマッチルールは上から順番にマッチングします。設定されたデータベース名とテーブル名のルールがすべて一致した場合のみ、そのルールに対応するTopicに発送されます。データベース・テーブルのマッチルールに一致しない場合、最後のルールのTopicに発送されます。複数のデータベース・テーブルのマッチルールに一致した場合、すべてのマッチルールのTopicに発送されます。 説明: マッチルールはデータベース・テーブル名の大文字と小文字を区別します。 ソースデータベースでlower_case_table_names=0に設定した場合、データベース・テーブルのマッチルール内のデータベース・テーブル名は、ソースデータベース内の名前と大文字・小文字を厳密に一致させる必要があります。 ソースデータベースでlower_case_table_names=1に設定した場合、データベース・テーブル名は小文字に統一して変換され、データベース・テーブルのマッチルール内のデータベース・テーブル名は小文字で統一して入力されます。 例1:データベースインスタンスXにおいて、UsersデータベースにStudent、Teacherテーブルがあり、UsersデータベースのデータをすべてTopic_Aに配信する必要があります。設定ルールは以下の通りです: Topic名に Topic_Aを入力し、データベース名のマッチングモードに^Users$を入力し、テーブル名のマッチングモードに .*を入力します。Topic名に Topic_defaultを入力し、データベース名のマッチングモード(マッチルールに一致しない残りのデータベース)、テーブル名のマッチングモード(マッチルールに一致しない残りのテーブル)を入力します。例2:データベースインスタンスXにおいて、UsersデータベースにStudent、Teacherテーブルがあり、StudentテーブルのデータをTopic_Aに、TeacherテーブルのデータをTopic_defaultに配信する必要があります。設定ルールは以下の通りです: Topic名に Topic_Aを入力し、データベース名のマッチングモードに^Users$を入力し、テーブル名のマッチングモードに^Student$を入力します。Topic名に Topic_defaultを入力し、データベース名のマッチングモード(マッチルールに一致しない残りのデータベース)、テーブル名のマッチングモード(マッチルールに一致しない残りのテーブル)を入力します。 |
| 単一Topicへの集中配信ルール | 指定されたTopicを選択すると、システムは以下の指定ポリシーに従ってパーティショニングを行います。 すべてPartition0に配信します:ソースデータベースの同期データをすべて最初のパーティションに配信します。 テーブル名によるパーティショニング:ソースデータベースの同期データをテーブル名に従ってパーティショニングします。設定後、同じテーブル名のデータは同じパーティションに書き込まれます。 テーブル名+PKによるパーティショニング:ソースデータベースの同期データをテーブル名+PKに従ってパーティショニングします。ホットデータに適しており、設定後、ホットデータのテーブルは、テーブル名+PKの方式でデータを異なるパーティションに分散し、並行消費効率を向上させます。 |
| DDLを格納するTopic | 任意です。ユーザーがソースデータベースのDDL操作を指定したTopicに個別に発送する必要がある場合、ここで選択して設定できます。
設定後、デフォルトで選択済みTopicのPartition0に発送されます。設定されていない場合は、上で選択したTopicルールに従って発送されます。 |
設定項目 | パラメータ | 説明 |
データ同期オプション | 同期操作タイプ | サポートされる操作:Insert、Update、Delete、DDL。「DDLカスタム」をチェックすると、必要に応じて異なるDDL同期ポリシーを選択できます。詳細については、SQLフィルタリングポリシーの設定を参照してください。 |
同期オブジェクトオプション | ソースインスタンスのテーブルオブジェクト | 同期対象のオブジェクトを選択します。基本データベース・テーブル、ビュー、ストアドプロシージャ、関数をサポートします。高度なオブジェクトの同期は1回限りのアクションであり、タスク開始前にソースデータベースに既に存在する高度なオブジェクトのみを同期できます。タスク開始後に新しく追加された高度なオブジェクトはターゲットデータベースに同期されません。詳細については、高度なオブジェクトの同期を参照してください。 |
| 選択済みオブジェクト | 左側で同期オブジェクトを選択した後、 ![]() |
| Online DDL一時テーブルを同期するかどうか | gh-ost、pt-oscツールを使用してソースデータベース内のテーブルに対してOnline DDL操作を実行する場合、DTSはOnline DDLの変更によって生成された一時テーブルをターゲットデータベースに移行することをサポートします。 gh-ostをチェックすると、DTSはgh-ostツールが生成した一時テーブル名(`_表名_ghc`、`_表名_gho`、`_表名_del`)をターゲットデータベースに移行します。 pt-oscをチェックすると、DTSはpt-oscツールが生成した一時テーブル名(`_表名_new`、`_表名_old`)をターゲットデータベースに移行します。 |
フィードバック