Maxwell采集Mysql数据到Kafka

Mysql设置

  • 修改/etc/my.cnf文件,开启binlog日志

    vim /etc/my.cnf
    

    添加一下配置
    server-id=1
    log-bin=mysql-bin 这个表示binlog日志的前缀是mysql-bin,以后生成的日志文件就是 mysql-bin.123456 的文件后面的数字按顺序生成,每次mysql重启或者到达单个文件大小的阈值时,新生一个文件,按顺序编号。
    binlog_format=row 这个表示binlog日志的级别为行级, binlog会记录每次操作后每行记录的变化(其他的级别有statement和mixed)。
    binlog-do-db=xxx 这个表示对哪个数据库开启binlog日志

  • 重启MySQL,使配置文件生效

    systemctl restart mysqld
    

Maxwell设置

  • 初始化Maxwell元数据库
    ①在MySQL中建立一个maxwell库用于存储Maxwell的元数据

    [root@node01 ~]# mysql -uroot -p123456
    mysql> CREATE DATABASE maxwell ;
    

    ②设置安全级别

    mysql> set global validate_password_length=4;
    mysql> set global validate_password_policy=0;
    

    ③分配一个账号可以操作该数据库

    mysql> GRANT ALL   ON maxwell.* TO 'maxwell'@'%' IDENTIFIED BY '123456';
    

    ④分配这个账号可以监控其他数据库的权限

    mysql> GRANT  SELECT ,REPLICATION SLAVE , REPLICATION CLIENT  ON *.* TO maxwell@'%';
    
  • 使用Maxwell监控抓取MySQL数据
    ① 拷贝配置文件

    [root@node01 maxwell-1.25.0]# cp config.properties.example config.properties
    

    ②修改配置文件

    producer=kafka
    kafka.bootstrap.servers=node01:9092,node01:9092,node01:9092
    #需要添加
    kafka_topic=kafka的主题名
    # mysql login info
    host=node01
    user=maxwell
    password=123456
    #需要添加 后续初始化会用
    client_id=maxwell_1
    

启动Maxwell

sh /opt/xxx/maxwell-1.25.0/bin/maxwell --config  /opt/xxx/maxwell-1.25.0/config.properties >/dev/null 2>&1 &
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值