1.3.3. MySQL コネクター設定プロパティー
Debezium MySQL コネクターを実行するには、ここに記載の設定プロパティーが 必要 です。また、詳細の MySQL コネクタープロパティー もデフォルト値を変更する必要がなく、コネクター設定で指定する必要はありません。
Debezium MySQL コネクターは、Kafka プロデューサーおよびコンシューマーの作成時に パススルー 設定をサポートします。パススルー プロパティーの詳細は、Kafka のドキュメント を 参照してください。
プロパティー | デフォルト | 説明 |
---|---|---|
| コネクターの一意名。同じ名前で再登録を試みると失敗します。(このプロパティーはすべての Kafka Connect コネクターに必要です) | |
|
コネクターの Java クラスの名前。MySQL コネクターには、常に | |
|
| このコネクターのために作成する必要のあるタスクの最大数。MySQL コネクターは常に単一のタスクを使用するため、この値を使用しません。そのため、デフォルト値は常に許容されます。 |
| MySQL データベースサーバーの IP アドレスまたはホスト名。 | |
|
| MySQL データベースサーバーのポート番号 (整数)。 |
| MySQL データベースサーバーへの接続時に使用する MySQL データベースの名前。 | |
| MySQL データベースサーバーへの接続時に使用するパスワード。 | |
| 監視対象の特定の MySQL データベースサーバー/クラスターの namespace を識別および提供する論理名。論理名は、他のコネクター全体で一意となる必要があります。これは、このコネクターから生成されるすべての Kafka トピック名の接頭辞として使用されるためです。英数字とアンダースコアのみを使用する必要があります。 | |
| random | このデータベースクライアントの数値 ID。MySQL クラスターで現在稼働しているすべてのデータベースプロセスで一意である必要があります。このコネクターは、MySQL データベースクラスターを (この一意の ID を持つ) 別のサーバーとして結合するため、binlog を読み取ることができます。デフォルトでは、5400 から 6400 までの乱数が生成されますが、明示的な値を設定することを推奨します。 |
| コネクターがデータベーススキーマの履歴を保存する Kafka トピックの完全名。 | |
| Kafka クラスターへの最初の接続を確立するためにコネクターが使用するホストとポートのペアの一覧。このコネクションは、コネクターによって以前に保存されたデータベーススキーマ履歴の取得や、ソースデータベースから読み取られる各 DDL ステートメントの書き込みに使用されます。これは、Kafka Connect プロセスによって使用される同じ Kafka クラスターを示す必要があります。 | |
| 空の文字列 |
監視するデータベース名と一致する正規表現のコンマ区切りリスト(任意)。ホワイトリストに含まれていないデータベース名は監視から除外されます。デフォルトでは、すべてのデータベースが監視されます。 |
| 空の文字列 |
監視から除外されるデータベース名と一致する正規表現のコンマ区切りリスト(任意)。ブラックリストに含まれていないデータベース名が監視されます。 |
| 空の文字列 |
監視するテーブルの完全修飾テーブル識別子と一致する正規表現のコンマ区切りリスト(任意)。ホワイトリストに含まれていないテーブルはすべて監視から除外されます。各識別子の形式は databaseName.tableName です。デフォルトでは、コネクターは各監視対象データベースのシステム以外のテーブルをすべて監視します。 |
| 空の文字列 |
監視から除外されるテーブルの完全修飾テーブル識別子と一致する正規表現のコンマ区切りリスト(任意)。ブラックリストに含まれていないテーブルはすべて監視されます。各識別子の形式は databaseName.tableName です。 |
| 空の文字列 | 変更イベントメッセージの値から除外される必要がある列の完全修飾名と一致する正規表現のコンマ区切りリスト (任意)。列の完全修飾名の形式は databaseName です。tableName.columnName または databaseName.schemaName.tableName.columnName. |
| 該当なし | フィールド値が指定された文字数より長い場合に、変更イベントメッセージ値で値を省略する必要がある文字ベースの列の完全修飾名と一致する正規表現のコンマ区切りリスト (任意)。長さが異なる複数のプロパティーを単一の設定で使用できますが、それぞれの長さは正の整数である必要があります。列の完全修飾名の形式は databaseName です。tableName.columnName または databaseName.schemaName.tableName.columnName. |
| 該当なし |
文字ベースの列の完全修飾名にマッチする正規表現のコンマ区切りリスト (オプション) で、変更イベントメッセージの値を、指定された数のアスタリスク ( |
| 該当なし |
出力された変更メッセージの該当するフィールドスキーマに元の型および長さをパラメーターとして追加する必要がある列の完全修飾名と一致する、正規表現のコンマ区切りリスト (任意)。スキーマパラメーター( |
|
|
時間、日付、およびタイムスタンプは、以下を含む異なる精度の種類で表すことができます。 |
|
|
コネクターによる |
|
|
BIGINT UNSIGNED 列を変更イベントで表す方法を指定します。 |
|
|
コネクターがデータベーススキーマの変更を、データベースサーバー ID と同じ名前の Kafka トピックに公開するかどうかを指定するブール値。各スキーマの変更はデータベース名が含まれるキーを使用して記録され、その値には DDL ステートメントが含まれます。これは、コネクターがデータベース履歴を内部で記録する方法には依存しません。デフォルトは |
|
|
変更イベントを生成した元の SQL クエリーがコネクターに含まれる必要があるかどうかを指定するブール値。 |
|
|
binlog イベントのデシリアライズ中にコネクターが例外に反応する方法を指定します。 |
|
|
内部スキーマ表現に存在しないテーブルに関連する binlog イベント(つまり、内部表現がデータベースと一貫性がない)に関連する binlog イベントにコネクターがどのように反応するかを指定します。つまり、問題のあるイベントとその binlog オフセットを示す例外が発生します(問題のあるイベントとその binlog オフセットを示す)。 |
|
|
データベースログから読み取られた変更イベントが Kafka に書き込まれる前に配置される、ブロッキングキューの最大サイズを指定する正の整数値。このキューは、Kafka への書き込みが遅い場合や Kafka が利用できない場合などに binlog リーダーにバックプレシャーを提供できます。キューに発生するイベントは、このコネクターによって定期的に記録されるオフセットには含まれません。デフォルトは 8192 で、常に |
|
| このコネクターの反復処理中に処理される必要があるイベントの各バッチの最大サイズを指定する正の整数値。デフォルトは 2048 です。 |
|
| 各反復処理の実行中に新しい変更イベントが表示されるまでコネクターが待機する時間 (ミリ秒単位) を指定する正の整数値。デフォルトは 1000 ミリ秒 (1 秒) です。 |
|
| コネクターが MySQL データベースサーバーへの接続を試行した後、タイムアウトするまでの最大の待機期間をミリ秒単位で指定する正の整数値。デフォルトは 30 秒です。 |
|
MySQL サーバーで binlog の位置を見つけるために使用される GTID セットのソース UUID に一致する、正規表現のコンマ区切りリスト。これらの include パターンのいずれかに一致するソースを持つ GTID 範囲のみが使用されます。 | |
|
MySQL サーバーで binlog の位置を見つけるために使用される GTID セットのソース UUID に一致する、正規表現のコンマ区切りリスト。これらの除外パターンのいずれにも一致するソースを持つ GTID 範囲のみが使用されます。 | |
|
|
削除イベント後に廃棄 (tombstone) イベントを生成するかどうかを制御します。 |
| 空の文字列 |
プライマリーキーをマップする完全修飾テーブルおよび列と一致する正規表現のセミコロン区切りリスト。 |
1.3.3.1. 高度な MySQL コネクタープロパティー
プロパティー | デフォルト | 説明 |
---|---|---|
|
| MySQL サーバー/クラスターへの接続を確実に維持するために別のスレッドを使用するかどうかを指定するブール値。 |
|
| 組み込みシステムテーブルを無視するかどうかを指定するブール値。これは、テーブルのホワイトリストまたはブラックリストに関係なく適用されます。デフォルトでは、システムテーブルは監視から除外され、どのシステムテーブルにも変更が加えられてもイベントが生成されません。 |
|
| 永続化されたデータのポーリングが行われている間にコネクターが起動/回復を待つ最大時間 (ミリ秒単位) を指定する整数値。デフォルトは 100 ミリ秒です。 |
|
|
エラーでコネクターのリカバリーが失敗する前に、コネクターが永続化された履歴データの読み取りを試行する最大回数。データが受信されなかった場合に最大待機する時間は、 |
|
|
コネクターが不正なデータベースステートメントや不明なデータベースステートメントを無視するか、処理を停止し、オペレーターが問題を修正するかどうかを指定するブール値。安全なデフォルトは |
|
|
コネクターがすべての DDL ステートメントを記録する必要があるかどうか、または( |
|
|
暗号化された接続を使用するかどうかを指定します。デフォルトは が
|
| 0 |
binlog リーダーによって使用される先読みバッファーのサイズ。 |
|
|
コネクターの起動時にスナップショットを実行する基準を指定します。デフォルトは
|
|
|
スナップショットの実行中にコネクターがグローバル MySQL 読み取りロック(データベースへの更新を行なう)に保持するかどうか、およびその期間を制御します。許容値は、
|
|
スナップショットに含まれるテーブルの行を制御します。 | |
|
| スナップショット操作中に、コネクターは含まれる各テーブルをクエリーし、そのテーブルのすべての行に対する読み取りイベントを生成します。このパラメーターは、MySQL 接続がテーブルのすべての結果をメモリーにプルする(高速ですが、大量のメモリーを必要とする)か、または結果が代わりにストリーミングされる(速度が遅い可能性がありますが、非常に大きなテーブルに対して機能する)かどうかを決定します。この値は、コネクターが結果をストリーミングする前にテーブルに含まれる必要がある行の最小数を指定します。デフォルトは 1,000 です。すべてのテーブルサイズチェックを省略し、スナップショットの実行中に常にすべての結果をストリーミングするには、このパラメーターを 0 に設定します。 |
|
|
ハートビートメッセージが送信される頻度を制御します。 |
|
|
ハートビートメッセージが送信されるトピックの命名を制御します。 |
|
データベースへの JDBC 接続(トランザクションログの読み取り接続ではない)が確立されたときに実行される SQL ステートメントのセミコロン区切りリスト。セミコロン(';;')を使用してセミコロンを区切り文字としてではなく、文字として使用します。 | |
|
コネクターの起動後、スナップショットを取得するまで待機する間隔 (ミリ秒単位)。 | |
| スナップショットの実行中に各テーブルから 1 度に読み取る必要がある行の最大数を指定します。コネクターは、このサイズの複数のバッチでテーブルの内容を読み取ります。 | |
|
| スナップショットの実行時に、テーブルロックを取得するまで待つ最大時間 (ミリ秒単位) を指定する正の整数値。この時間間隔でテーブルロックを取得できない場合、スナップショットは失敗します。How the MySQL connector perform database snapshots を参照してください。 |
|
MySQL では、ユーザーは 2 桁の数字または 4 桁の年値を挿入できます。2 桁の数値の場合、値は自動的に 1970 - 2069 の範囲にマッピングされます。通常、これはデータベースで実行されます。 | |
|
コネクター設定が、Avro を使用するように | Avro の命名要件 に準拠するためにフィールド名がサニタイズされるかどうか。 |