详细资料可以参考maxwell官网  (mysql + maxwell + kafka + elasticsearch)
说明:本文主要是关于配置maxwell监听mysql的数据修改并实时将修改内容同步到kafka中。

- 配置mysql启用binlog

配置/etc/my.cnf,然后重启mysql服务

[mysqld]
server-id=1
log-bin=master
binlog_format=row

在mysql中给maxwell授予相应的权限并建立maxwell数据库

MariaDB [(none)]>  GRANT ALL on maxwell.* to 'maxwell'@'%' identified by '123456';
Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> GRANT SELECT, REPLICATION CLIENT, REPLICATION SLAVE on *.* to 'maxwell'@'%';
Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

建立一个测试用表,并插入一条数据

MariaDB [(none)]> use hivetest;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A Database changed
MariaDB [hivetest]> insert into test set name = '11111', age = '12313';
Query OK, 1 row affected (0.00 sec)

- maxwell配置文件

[root@datanode1 ~]# cat /opt/maxwell-1.10.6/config.properties  | grep -v ^#  | grep -v ^$
log_level=info
producer=kafka
kafka.bootstrap.servers=192.168.190.11:9092,192.168.190.14:9092,192.168.190.17:9092
host=localhost
user=maxwell
password=123456
kafka_topic=test
kafka.compression.type=snappy
kafka.metadata.fetch.timeout.ms=5000
kafka.retries=3
kafka.acks=all
kinesis_stream=maxwell

启动maxwell测试下是否能正常获取binglog

[root@datanode1 maxwell-1.10.6]# bin/maxwell --user='maxwell' --password='123456' --host='127.0.0.1' --producer=stdout
14:12:01,700 WARN MaxwellMetrics - Metrics will not be exposed: metricsReportingType not configured.
14:12:01,933 INFO SchemaStoreSchema - Creating maxwell database
14:12:02,004 INFO Maxwell - Maxwell v1.10.6 is booting (StdoutProducer), starting at Position[BinlogPosition[mysql-bin.000001:3997], lastHeartbeat=0]
14:12:02,146 INFO AbstractSchemaStore - Maxwell is capturing initial schema
14:12:02,328 INFO BinlogConnectorReplicator - Setting initial binlog pos to: mysql-bin.000001:3997
14:12:02,383 INFO BinaryLogClient - Connected to 127.0.0.1:3306 at mysql-bin.000001/3997 (sid:6379, cid:7)
{"database":"hivetest","table":"test","type":"insert","ts":1506319983,"xid":142,"commit":true,"data":{"id":168,"name":"11111","age":12313,"create_time":"2017-09-25 06:13:03"}}

ok,测试成功。
后台启动maxwell,并将数据发送到kafka(需要先在kafka中建好topic)

[root@datanode1 ~]# nohup bin/maxwell --user='maxwell' --password='123456' --host='127.0.0

作者:观天坏笑
链接:https://www.jianshu.com/p/5621e801f142
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

最新文章

  1. Thinkphp 3.2中字符串截取
  2. ubuntu下gedit中文乱码
  3. 【Android】将Xamarin For VS升级为4.1.0.530版
  4. Java SE技术概览 - Jave SE Platform at a Glance
  5. C_functions
  6. jquery-2.0.3.js和jquery-2.0.3.min.js的区别
  7. IOS学习网址
  8. linux文件的隐藏属性:chattr
  9. 将应用程序中的一些参数写到xml配置文件中
  10. JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
  11. 怎样让一个div高度自适应浏览器高度
  12. C/C++ 定义与声明详解(转)
  13. python爬虫之获取验证码登陆
  14. Caused by: java.net.SocketException: Broken pipe
  15. JS 获取某个容器控件中id包含制定字符串的控件id列表
  16. C# 木马功能的简单实现
  17. python数据结构之quick_sort
  18. ubuntu18+gtx1060 +cuda9+cudnn-v7+opencv3.1.0 配置深度学习环境
  19. 设计模式原则(4)--Interface Segregation Principle(ISP)--接口隔离原则
  20. 为什么你学不会递归?告别递归,谈谈我的一些经验 关于集合中一些常考的知识点总结 .net辗转java系列(一)视野 彻底理解cookie,session,token

热门文章

  1. LINUX下实现按秒执行计划任务
  2. mongoTemplate学习笔记
  3. Django 三—— Form组件
  4. Java -X命令
  5. 配置网络策略中的 NAP 条件
  6. Python框架之Django学习笔记(八)
  7. 34、Java集合框架List,Map,Set等全面介绍(转载)
  8. openpyxl模块介绍
  9. [oldboy-django][6其他]微信二维码扫码登录注册
  10. mysql-Innodb事务隔离级别-repeatable read详解