2.3.2. MySQL コネクターの設定
通常、コネクターで使用できる設定プロパティーを使用して、.yaml
ファイルで Debezium MySQL コネクターを設定します。
前提条件
- コネクターの インストールプロセス を完了している必要があります。
手順
-
.yaml
ファイルでコネクター"name"
のを設定します。 - Debezium MySQL コネクターに必要な設定プロパティーを設定します。
ヒント
設定プロパティーの完全リストは、「 MySQL コネクター設定プロパティー 」を参照してください。
MySQL コネクターの設定例
apiVersion: kafka.strimzi.io/v1beta1 kind: KafkaConnector metadata: name: inventory-connector 1 labels: strimzi.io/cluster: my-connect-cluster spec: class: io.debezium.connector.mysql.MySqlConnector tasksMax: 1 2 config: 3 database.hostname: mysql 4 database.port: 3306 database.user: debezium database.password: dbz database.server.id: 184054 5 database.server.name: dbserver1 6 database.whitelist: inventory 7 database.history.kafka.bootstrap.servers: my-cluster-kafka-bootstrap:9092 8 database.history.kafka.topic: schema-changes.inventory 9
- 1 1
- コネクターの名前。
- 2 2
- 1 度に操作する必要があるタスクは 1 つだけです。MySQL コネクターは MySQL サーバーの読み取りを行うため
binlog
、単一のコネクタータスクを使用すると適切な順序とイベント処理が確保されます。Kafka Connect サービスはコネクターを使用して作業を行う 1 つ以上のタスクを開始し、Kafka Connect サービスのクラスター全体に実行中のタスクを自動的に分散します。いずれかのサービスが停止またはクラッシュすると、そのタスクは実行中のサービスに再分配されます。 - 3 3
- コネクターの設定。
- 4 4
- データベースホスト。これは、MySQL サーバー(
mysql
)を実行しているコンテナーの名前です。 - 5 5 6
- 一意のサーバー ID および名前。サーバー名は、サーバーの MySQL サーバーまたはクラスターの論理識別子です。この名前は、すべての Kafka トピックの接頭辞として使用されます。
- 7
inventory
データベースの変更のみが検出されます。- 8 9
- コネクターはこのブローカー(イベントを送信するのと同じブローカー)およびトピック名を使用して、データベーススキーマの履歴を Kafka に保存します。再起動すると、コネクターは、コネクターの読み取りを開始する
binlog
際に存在したデータベースのスキーマを復元します。