|
|
## 简介
|
|
|
|
|
|
```shell
|
|
|
Maxwell是一个能实时读取MySQL二进制日志binlog,并生成 JSON 格式的消息,作为生产者发送给 Kafka,Kinesis、RabbitMQ、Redis、Google Cloud Pub/Sub、文件或其它平台的应用程序。它的常见应用场景有ETL、维护缓存、收集表级别的dml指标、增量到搜索引擎、数据分区迁移、切库binlog回滚方案等。官网(http://maxwells-daemon.io)、GitHub(https://github.com/zendesk/maxwell)
|
|
|
|
|
|
Maxwell主要提供了下列功能:
|
|
|
支持 SELECT * FROM table 的方式进行全量数据初始化
|
|
|
支持在主库发生failover后,自动恢复binlog位置(GTID)
|
|
|
可以对数据进行分区,解决数据倾斜问题,发送到kafka的数据支持database、table、column等级别的数据分区
|
|
|
工作方式是伪装为Slave,接收binlog events,然后根据schemas信息拼装,可以接受ddl、xid、row等各种event
|
|
|
```
|
|
|
|
|
|
## 前置条件
|
|
|
|
|
|
### 1、MySQL
|
... | ... | |