1.3.2. MySQL コネクターの設定
通常、コネクターに使用できる設定プロパティーを使用して、.yaml
ファイルに Debezium MySQL コネクターを設定します。
前提条件
- コネクターの インストールプロセス を完了している必要があります。
手順
-
.yaml
ファイルにコネクターの名前
を設定します。 - 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
- 一意なサーバー ID および名前。サーバー名は、MySQL サーバーまたはサーバーのクラスターの論理識別子です。
- 6
- この名前は、すべての Kafka トピックの接頭辞として使用されます。
- 7
inventory
データベースの変更のみが検出されます。- 8
- コネクターは、このブローカー (イベントの送信先となるブローカーと同じ) とトピック名を使用して、データベーススキーマの履歴を Kafka に保存します。
- 9
- 再起動時に、コネクターは、コネクターが読み取りを開始すべき時点で
binlog
に存在したデータベースのスキーマを復元します。