资料介绍
软件简介
mbinlogmq 一个基于MySQL binlog协议的数据同步中间件
什么是mbinlogmq?
mbinlogmq 是一个使用C语言开发的基于 MySQL binlog 协议的一个中间件,通过模拟Slave 来实时获取 MySQL binlog日志,并将数据变更信息以及 DB 语句发送到 RabbitMQ,中间通过监听机制与校验机制来确保不宕机的情况下的100%抵达 RMQ
设计架构
安装&编译
- mbinlog依赖于一些第三方库:
请先安装依赖软件: cURL
、mysql
、rabbitmq
,安装完成后记住其安装的路径,进入下面的步骤
-
下载
mbinlogmq
源码
git clone https://gitee.com/josinli/mbinlogmq.git
-
修改
CMakeLists.txt
,将如下的几行变为您上面安装的路径:
set(MYSQL_INCLUDE /usr/local/mysql/include) # 您系统的MySQL头文件路径 set(MYSQL_LIBRARY_DIR /usr/local/mysql/lib) # 您系统的MySQL库文件路径 set(CURL_DIR /usr/local/Cellar/curl/7.58.0) # 您系统的curl安装路径
- 执行编译安装命令
mkdir build cd build cmake .. && make && sudo make install
-
修改
/etc/mbinlogmq/binlog.xml
您的配置信息
rabbitmq 127.0.0.1 root 3333 3306 6 1 127.0.0.1 guest guest 15672 1 amq.default Invalid fanout /
- 启动您的 minblogmq
mbinlogmq -k start
此时进入 MySQL 操作,同时登录 RabbitMQ 查看消息是否成功抵达,目前的版本存在一些或多或少的问题,切勿生产环境使用。
mbinlogmq会针对不同的binlog日志生成四种类型的消息,消息类型如下
- 消息全部为 JSON 格式
- 格式如下
1、UPDATE 语句,etype等于 1,包含一个pre
对象 和 new
对象,分别对应修改之前的数据和新的数据
{ "etype": 1, "data" : { "pre": { "id":1, "ad":2 }, "new": { "id":1, "ad":3 } } }
2、INSERT 消息, etype 等于 2
{ "etype": 1, "data" : { "id":1, "ad":3 } }
3、DELETE 消息, etype 等于 3
{ "etype": 3, "data" : { "id":1, "ad":3 } }
4、SQL 语句 消息, etype 等于 4
{ etype: 4, data: "ALTER TABLE `books`.`test_at` MODIFY COLUMN `cc` datetime(0) NULL DEFAULT NULL AFTER `bb`" }
示例消息如下:
[x] Received {"etype":4,"data":"ALTER TABLE `books`.`test_at` \nMODIFY COLUMN `bb` date NULL DEFAULT NULL AFTER `aa`"} [x] Received {"etype":4,"data":"ALTER TABLE `books`.`test_at` \nMODIFY COLUMN `bb` date NOT NULL AFTER `aa`"} [x] Received {"etype":4,"data":"BEGIN"} [x] Received {"etype":1,"data":{"pre":{"id":1,"book_name":"傲世丹神1","book_cover":"http://img.c0m.io/quanben.io/upload/thumbnail/book_0_999/book_1.jpg","add_time":"2019-7-23 14:28:43","author_name":"寂小贼111","introduction":"废柴少年得无上传承,获逆天神脉,学绝世神功,掌握超绝丹术,这使他...","test_date":"2019-7-29"},"new":{"id":1,"book_name":"傲世丹神1","book_cover":"http://img.c0m.io/quanben.io/upload/thumbnail/book_0_999/book_1.jpg","add_time":"2019-7-23 21:47:36","author_name":"寂小贼","introduction":"废柴少年得无上传承,获逆天神脉,学绝世神功,掌握超绝丹术,这使他...","test_date":"2019-7-29"}}} [x] Received {"etype":4,"data":"COMMIT"} [x] Received {"etype":4,"data":"BEGIN"} [x] Received {"etype":1,"data":{"pre":{"id":1,"book_name":"傲世丹神1","book_cover":"http://img.c0m.io/quanben.io/upload/thumbnail/book_0_999/book_1.jpg","add_time":"2019-7-23 21:47:36","author_name":"寂小贼","introduction":"废柴少年得无上传承,获逆天神脉,学绝世神功,掌握超绝丹术,这使他...","test_date":"2019-7-29"},"new":{"id":1,"book_name":"傲世丹神","book_cover":"http://img.c0m.io/quanben.io/upload/thumbnail/book_0_999/book_1.jpg","add_time":"2019-7-23 21:47:54","author_name":"寂小贼","introduction":"废柴少年得无上传承,获逆天神脉,学绝世神功,掌握超绝丹术,这使他...","test_date":"2019-7-29"}}} [x] Received {"etype":4,"data":"COMMIT"}
有问题可以及时通过 ISSUE 反馈,反馈地址:GITEE Go Go Go!!!
- 通信中间件接口手册 2次下载
- 面向云数据库的属性基加密和查询转换中间件 5次下载
- 基于.NET数据持久层中间件设计 3次下载
- 基于ARM平台的RFID中间件系统设计 15次下载
- 基于嵌入式系统的RFID中间件设计 25次下载
- 基于通用中间件接口服务器的远程医疗信息系统 28次下载
- 可视化重构RFID中间件研究 22次下载
- 基于JMS的RFID中间件设计与实现
- 基于中间件技术的异构机器人系统设计及实现
- 复杂事件处理技术在RFID中间件中的研究
- 中间件在产业链协同平台的应用和研究
- 支持多服务的消息中间件设计与实现
- 基于上下文感知移动中间件的研究与设计
- 中间件思想在嵌入式GIS 设计中的应用
- 中间件思想在嵌入式GIS设计中的应用
- DDS通信中间件——DCPS规范(下) 315次阅读
- DDS通信中间件——DCPS规范(上) 642次阅读
- 一文掌握中间件技术基础 460次阅读
- Redis可以实现消息中间件MQ的功能 979次阅读
- DBSyncer支持多种数据源和预警功能 1137次阅读
- 基于应用技术实现RFID中间件的设计解决方案 3420次阅读
- 基于SOA的RFID中间件如何来设计 744次阅读
- 嵌入式RFID 中间件的标签是如何处理数据的 1015次阅读
- RFID中间件ALE引擎是怎样设计实现的 1278次阅读
- 面向移动设备的可配置RFID中间件如何实现 741次阅读
- Mysql主从同步的实现原理 2984次阅读
- RFID 中间件的特征及作用介绍 1.5w次阅读
- 无线射频识别RFID中间件技术解析 2273次阅读
- RFID系统中间件平台架构研究 1208次阅读
- ActiveMQ的消息中间件及安装说明 894次阅读
下载排行
本周
- 1A7159和A7139射频芯片的资料免费下载
- 0.20 MB | 55次下载 | 5 积分
- 2PIC12F629/675 数据手册免费下载
- 2.38 MB | 36次下载 | 5 积分
- 3PIC16F716 数据手册免费下载
- 2.35 MB | 18次下载 | 5 积分
- 4dsPIC33EDV64MC205电机控制开发板用户指南
- 5.78MB | 8次下载 | 免费
- 5STC15系列常用寄存器汇总免费下载
- 1.60 MB | 7次下载 | 5 积分
- 6模拟电路仿真实现
- 2.94MB | 4次下载 | 免费
- 7PCB图绘制实例操作
- 2.92MB | 2次下载 | 免费
- 8零死角玩转STM32F103—指南者
- 26.78 MB | 1次下载 | 1 积分
本月
- 1ADI高性能电源管理解决方案
- 2.43 MB | 452次下载 | 免费
- 2免费开源CC3D飞控资料(电路图&PCB源文件、BOM、
- 5.67 MB | 141次下载 | 1 积分
- 3基于STM32单片机智能手环心率计步器体温显示设计
- 0.10 MB | 137次下载 | 免费
- 4A7159和A7139射频芯片的资料免费下载
- 0.20 MB | 55次下载 | 5 积分
- 5PIC12F629/675 数据手册免费下载
- 2.38 MB | 36次下载 | 5 积分
- 6如何正确测试电源的纹波
- 0.36 MB | 19次下载 | 免费
- 7PIC16F716 数据手册免费下载
- 2.35 MB | 18次下载 | 5 积分
- 8Q/SQR E8-4-2024乘用车电子电器零部件及子系统EMC试验方法及要求
- 1.97 MB | 8次下载 | 10 积分
总榜
- 1matlab软件下载入口
- 未知 | 935121次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420062次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233088次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191367次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183335次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73810次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65988次下载 | 10 积分
评论
查看更多