首页/数据/数据工程与 ETL 速查/Maxwell:轻量 binlog JSON 输出
本包目录(311 条)
管道基础52 条Kafka64 条调度与编排40 条数仓建模52 条数据质量50 条
CDC 与同步53 条

Maxwell:轻量 binlog JSON 输出

Maxwell 是 Java 实现的轻量 MySQL binlog 解析器,把变更输出为 JSON,支持标准输出与 Kafka/Redis 等生产者;配置精简(连接信息 + producer + 主题),适合快速给下游喂增量 JSON 的场景,位点保存在自身 schema 的数据表中用于重启续传。

config.properties 示例

config.properties 示例
host=10.0.0.5
user=maxwell
password=***
producer=kafka
kafka.bootstrap.servers=10.0.0.6:9092
kafka_topic=maxwell

启动

启动
bin/maxwell --config config.properties --daemon
输入ROW 格式 binlog
输出JSON 变更事件(含数据库、表、旧值与新值)
位点保存在 maxwell 库的位点表
账号需要复制相关权限与 SELECT
与 Canal/Debezium 相同:依赖 ROW 格式 binlog;升级前先确认 binlog_row_image 未被改成 MINIMAL。

易错点

  • 位点表被误清,重启后从头回放产生重复
  • 直接拿 JSON 里的新值当全量行使用,漏掉未变更列的处理逻辑

数据来源与参考

  • Maxwell 官方文档(zendesk/maxwell)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌