电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>mbinlogmq基于MySQL binlog的数据同步中间件

mbinlogmq基于MySQL binlog的数据同步中间件

2022-06-22 | zip | 0.18 MB | 次下载 | 免费

资料介绍

授权协议 BSD
开发语言 C/C++
软件类型 开源软件

软件简介

mbinlogmq 一个基于MySQL binlog协议的数据同步中间件

什么是mbinlogmq?

mbinlogmq 是一个使用C语言开发的基于 MySQL binlog 协议的一个中间件,通过模拟Slave 来实时获取 MySQL binlog日志,并将数据变更信息以及 DB 语句发送到 RabbitMQ,中间通过监听机制与校验机制来确保不宕机的情况下的100%抵达 RMQ

设计架构

poYBAGKn7eOATMxnAAIojrVdnnI923.png

安装&编译

  • mbinlog依赖于一些第三方库:

请先安装依赖软件: cURL 、mysqlrabbitmq,安装完成后记住其安装的路径,进入下面的步骤

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!!!

 

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1A7159和A7139射频芯片的资料免费下载
  2. 0.20 MB   |  55次下载  |  5 积分
  3. 2PIC12F629/675 数据手册免费下载
  4. 2.38 MB   |  36次下载  |  5 积分
  5. 3PIC16F716 数据手册免费下载
  6. 2.35 MB   |  18次下载  |  5 积分
  7. 4dsPIC33EDV64MC205电机控制开发板用户指南
  8. 5.78MB   |  8次下载  |  免费
  9. 5STC15系列常用寄存器汇总免费下载
  10. 1.60 MB   |  7次下载  |  5 积分
  11. 6模拟电路仿真实现
  12. 2.94MB   |  4次下载  |  免费
  13. 7PCB图绘制实例操作
  14. 2.92MB   |  2次下载  |  免费
  15. 8零死角玩转STM32F103—指南者
  16. 26.78 MB   |  1次下载  |  1 积分

本月

  1. 1ADI高性能电源管理解决方案
  2. 2.43 MB   |  452次下载  |  免费
  3. 2免费开源CC3D飞控资料(电路图&PCB源文件、BOM、
  4. 5.67 MB   |  141次下载  |  1 积分
  5. 3基于STM32单片机智能手环心率计步器体温显示设计
  6. 0.10 MB   |  137次下载  |  免费
  7. 4A7159和A7139射频芯片的资料免费下载
  8. 0.20 MB   |  55次下载  |  5 积分
  9. 5PIC12F629/675 数据手册免费下载
  10. 2.38 MB   |  36次下载  |  5 积分
  11. 6如何正确测试电源的纹波
  12. 0.36 MB   |  19次下载  |  免费
  13. 7PIC16F716 数据手册免费下载
  14. 2.35 MB   |  18次下载  |  5 积分
  15. 8Q/SQR E8-4-2024乘用车电子电器零部件及子系统EMC试验方法及要求
  16. 1.97 MB   |  8次下载  |  10 积分

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935121次下载  |  10 积分
  3. 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
  4. 1.48MB  |  420062次下载  |  10 积分
  5. 3Altium DXP2002下载入口
  6. 未知  |  233088次下载  |  10 积分
  7. 4电路仿真软件multisim 10.0免费下载
  8. 340992  |  191367次下载  |  10 积分
  9. 5十天学会AVR单片机与C语言视频教程 下载
  10. 158M  |  183335次下载  |  10 积分
  11. 6labview8.5下载
  12. 未知  |  81581次下载  |  10 积分
  13. 7Keil工具MDK-Arm免费下载
  14. 0.02 MB  |  73810次下载  |  10 积分
  15. 8LabVIEW 8.6下载
  16. 未知  |  65988次下载  |  10 积分