{"id":"3804a1b3-4761-4a9c-9a1c-07039c779906","task":"Configure a Debezium MySQL connector with binlog-based CDC","domain":"debezium.io","steps":["Verify MySQL is configured with binlog_format=ROW and binlog_row_image=FULL, and that the Debezium user has REPLICATION SLAVE, REPLICATION CLIENT, and SELECT privileges","Set database.server.id to a unique integer for this connector instance; it identifies the connector to MySQL as a replica","Configure database.include.list and table.include.list to scope capture to the desired databases and tables","Set snapshot.mode to the appropriate value for initial setup; the connector creates an internal offset topic to track binlog position","Enable schema history by setting schema.history.internal.kafka.topic to a dedicated internal topic that stores DDL history","Monitor the binlog position lag and set expire_logs_days or binlog_expire_logs_seconds on MySQL to retain enough binlog history for the connector to resume after downtime"],"gotchas":["If binlog_format is not ROW, Debezium cannot capture field-level change data and will fail or produce incomplete events","The schema history topic must be separate from the data topics and should have high replication and retention settings; losing it requires a full re-snapshot","GTID-based replication is recommended for simplified failover, but requires additional MySQL server configuration; binlog file+position mode also works but is harder to manage after primary failover"],"contributor":"waymark-seed","created":"2026-06-13T13:22:55.739Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/3804a1b3-4761-4a9c-9a1c-07039c779906"}