kafka身份认证 maxwell_maxwell实时读取MySQL二进制日志binlog同步到kafka

在线QQ客服:1922638

专业的SQL Server、MySQL数据库同步软件

Mysql的binlog日志用于记录mysql内部对mysql数据库的添加和删除以及其他更新(对数据库的更改)。binlog日志不会记录对数据库的查询或选择;主要用于数据库主从复制和增量恢复。

mysql的binlog日志必须打开log-bin函数以生成binlog日志

1,启用MySQL的binlog日志

修改/etc/my.cnf

重新启动MySQL并通过命令进行验证

输入指定的binlog路径以检查是否生成了binlog

2.安装Maxwell

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表进行完整的数据初始化。在主库中进行故障转移后,可以自动还原binlog位置(GTID)。可以对数据进行分区以解决数据倾斜问题。发送给kafka的数据支持将数据库,表,列和其他级别的数据分区工作伪装成从属,接收binlog事件,然后根据架构信息进行组装。它可以接受各种事件,例如ddl,xid,row等。除Maxwell外,当前常用的MySQL Binlog解析工具主要包括Ali canal,Mysql_streamer,这三个工具的比较如下:

Canal由Java开发,分为服务器和客户端。它具有许多派生应用程序,具有稳定的性能和强大的功能。运河需要编写自己的客户端以使用运河分析的数据。

与运河相比,maxwell的优势在于使用简单。它直接将数据更改输出为json字符串,无需编写客户端

将压缩包上传到MySQL节点并解压缩

3.配置maxwell并将binlog解析为kafka

编写一个配置文件,主要用于指定解析业务库的binlog并将数据发送到kafka

上面参数的说明:http://maxwells-daemon.io/config/

4.创建一个Maxwell数据库用户并授予权限

创建一个Maxwell用户并授予Maxwell库一些权限

5.编写Maxwell启动脚本

启动后,通过jps-m查看进度

>

你可能感兴趣的:(kafka身份认证,maxwell)