Maxwell介绍

一、介绍

介绍:它读取MySQL binlog并将数据更改作为JSON写入Kafka、Kinesis和其他流媒体平台(目前支持:kafka、RabbitMQ、Redis、file、Kinesis、Nats、Google Cloud Pub/Sub、Google Cloud Bigquery、SNS)
版本:从v1.30.0版本开始不支持jdk1.8,支持jdk11,所以推荐使用v1.29.2版本
在这里插入图片描述

官网:https://maxwells-daemon.io/

二、安装配置

下载地址:https://github.com/zendesk/maxwell/releases/tag/v1.29.2

2.1、开启mysql binlog

# /etc/my.cnf

[mysqld]
#数据库id
server-id = 1
#启动binlog,该参数的值会作为binlog的文件名
log-bin=mysql-bin
#binlog类型,maxwell要求为row类型
binlog_format=row
#启用binlog的数据库,需根据实际情况作出修改
binlog-do-db=demo

2.2、解压缩

tar -zxvf maxwell-1.29.2.tar.gz -C maxwell

三、启动

启动命令执行之后会自动在对应的数据库中创建maxwell数据库用于存放元数据

3.1、将数据发送到kafka

bin/maxwell --user='maxwell' --password='XXXXXX' --host='127.0.0.1' \
   --producer=kafka --kafka.bootstrap.servers=localhost:9092 --kafka_topic=maxwell

3.2、将数据发送到rabbitmq

bin/maxwell --user='maxwell' --password='XXXXXX' --host='127.0.0.1' \
    --producer=rabbitmq --rabbitmq_host='rabbitmq.hostname'

3.3、将数据发送到redis

bin/maxwell --user='maxwell' --password='XXXXXX' --host='127.0.0.1' \
    --producer=redis --redis_host=redis.hostname

3.4、使用docker的方式将数据发送到kafka

docker run -it --rm zendesk/maxwell bin/maxwell --user=$MYSQL_USERNAME \
    --password=$MYSQL_PASSWORD --host=$MYSQL_HOST --producer=kafka \
    --kafka.bootstrap.servers=$KAFKA_HOST:$KAFKA_PORT --kafka_topic=maxwell

四、高可用

官网:https://maxwells-daemon.io/high_availability/
maxwell v1.29.2 版本不支持高可用,但是提供了采用 jgroups-raft 算法的高可用方案

五、过滤表

同步指定数据库的数据,支持一下两种方式进行过滤

--filter = 'exclude: foodb.*, include: foodb.tbl, include: foodb./table_\d+/'


--filter = 'exclude: *.*, include: db1.*'

六、全量同步

bin/maxwell-bootstrap --database fooDB --table barTable

bin/maxwell-bootstrap --database fooDB --table barTable --where "my_date >= '2017-01-07 00:00:00'"

七、总结

maxwell是一款采用Java开发的mysql数据同步中间件,支持全量/增量数据的同步,数据采用JSON的方式传输,无其他格式,不支持高可用,使用简单。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/333833.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

解决百度地图在模拟器上运行报 java.lang.IllegalArgumentException: No config chosen问题

解决百度地图在模拟器上运行报 java.lang.IllegalArgumentException: No config chosen 问题 1. 问题复现 在近期公司使用模拟器(网易MuMu)进行项目演示时,在进入存在百度地图(Android版本 7.4.2版本)之后,页面出现奔溃,后台日志为&#xf…

域环境权限提升

Windows系统配置错误 在Windows系统中,攻击者通常会通过系统内核溢出漏来提权,但是如果碰到无法通过系统内核溢出漏洞法国提取所在服务器权限的情况,就会系统中的配置错误来提权。Windows系统中常见哦欸之错误包括管理员凭证配置错误&#x…

Linux7 安装 Oracle 19C RAC 详细图文教程

实战篇:Linux7 安装 Oracle 19C RAC 详细图文教程 本文是按照:https://www.modb.pro/db/154424的思路进行编写 一、安装前规划 安装RAC前,当然要先做好规划。具体包含以下几方面: 节点主机版本主机名实例名Grid/Oracle版本Publi…

【论文简介】个性化真实人像生成方法(2024.01.15发布,即将开源)

零样本身份保留生成方法:声称效果好于PhotoMaker(即将开源) 2401.InstantID: Zero-shot Identity-Preserving Generation in Seconds : 项目主页:https://instantid.github.io/ 一、简介 本文的主要内容是介绍了一种…

【MATLAB】SVMD_LSTM神经网络时序预测算法

有意向获取代码,请转文末观看代码获取方式~也可转原文链接获取~ 1 基本定义 SVMD-LSTM神经网络时序预测算法是一种结合了单变量经验模态分解(Singular Value Decomposition,SVD)和长短期记忆神经网络(LSTM&#xff09…

十年很短,编程很难

前天冲浪看到的一篇文章,深有感触,翻译给大家一起看看吧 许多年前,当我仍是一名主修计算机科学的高年级学生时,我整天浏览各种在线招聘信息,希望能找到适合程序员的实习职位 除了实习职位,我偶尔也会点击一…

统计学R语言实验8 :线性回归

统计学R语言实验8 :线性回归 一、实验目的 1. 掌握理解线性回归的相关概念。 2. 掌握理解线性回归的相关方法。 3. 熟悉R语言等语言的集成开发环境。 二、实验分析与内容 完成教材P132的第2题 散点图 将 shouru 向量作为 x 轴,zhichu 向量作为 y 轴…

各模块的实现

注册模块: 注册使用手机号发送验证码注册的方式,使用的是阿里云的短信发送服务,然后进行认证,有个60s的时间,可以存到redis中,key是手机号,value是验证码。 使用Spring自带的BCryptPasswordEn…

《亚太教育》期刊投稿方式

《亚太教育》杂志是国家新闻出版总署批准的正规教育类期刊,旨在传播教育文化信息和动态,展示教育实践模式和经验,搭建教育科研成果交流平台。杂志将致力于服务教育事业的创新发展,传播教育文化新信息,展示教育实践新模…

java基础:求数组的最值

方法一:顺序查找 先假设数组第一个元素为最值,然后和数组里的数按顺序进行比较得出最值,所以叫顺序查找。 代码如下 package idea;public class arr_int {public static void main(String[] args) { // 初始化一个数组int[] arr {12…

第十一章 请求响应

第十一章 请求响应 1.概述2.请求-postman工具3.请求-简单参数&实体参数4.请求-数组集合参数5.请求-日期参数&JSON参数6.请求-路径参数7.响应-ResponseBody&统一响应结果8.响应-案例 1.概述 将前端发送的请求封装为HttpServletRequest对象 在通过HttpServletRespo…

经典数据库练习题及答案

数据表介绍 --1.学生表 Student(SId,Sname,Sage,Ssex) --SId 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别 --2.课程表 Course(CId,Cname,TId) --CId 课程编号,Cname 课程名称,TId 教师编号 --3.教师表 Teacher(TId,Tname) --TId 教师编号,Tname 教师姓名 --4.成绩…

freeswitch on centos dockerfile模式

概述 freeswitch是一款简单好用的VOIP开源软交换平台。 centos7 docker上编译安装fs的流程记录,本文使用dockerfile模式。 环境 docker engine:Version 24.0.6 centos docker:7 freeswitch:v1.6.20 dockerfile 创建空目录…

基于springboot+vue的校园周边美食探索及分享平台系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目背景…

使用 MinIO 和 PostgreSQL 简化数据事件

本教程将教您如何使用 Docker 和 Docker Compose 在 MinIO 和 PostgreSQL 之间设置和管理数据事件,也称为存储桶或对象事件。 您可能已经在利用 MinIO 事件与外部服务进行通信,现在您将通过使用 PostgreSQL 自动化和简化数据事件管理来增强数据处理能力…

怎么处理vue项目中的错误详解

文章目录 一、错误类型二、如何处理后端接口错误代码逻辑问题全局设置错误处理生命周期钩子 三、源码分析小结参考文献 一、错误类型 任何一个框架,对于错误的处理都是一种必备的能力 在 Vue 中,则是定义了一套对应的错误处理规则给到使用者&#xff0…

一万六千字大章:Chrome 浏览器插件 V3 版本 Manifest.json 文件全字段解析

Chrome 浏览器插件 V3 版本 Manifest.json 文件全字段解析 Manifest.json 文件格式 每个扩展程序的根目录中都必须有一个 manifest.json 文件,其中列出了有关该扩展程序的结构和行为的重要信息。 1、Demo 展示 1. 最小文件 {"manifest_version": 3,&quo…

Git入门详细教程

一、Git概述🎇 Git官网 Git是一个开源的分布式版本控制系统,用于跟踪文件的变化和协作开发。它允许多个开发者在同一项目中共同工作,并能够有效地管理代码的版本和历史记录。Git可以帮助开发团队更好地协作,追踪代码变更&#xf…

云轴科技ZStack 助力广西某地级市建设市级警务云视频系统

某市属于广西壮族自治区辖地级市,省域副中心城市,选择云轴科技ZStack 超融合解决方案支撑警务云视频监控联网管理系统(警务云视频系统),实现了该市对各辖区视频资源统一管理;同时也满足了该市警务云视频系统…

技术分享 | App常见bug解析

在 app 产品测试过程中,可能会遇到很多不同类型的 Bug。知道了可能 Bug 的类型,有利于在测试过程中更好的预防这些问题的发生。 功能Bug 内容显示错误 前端页面展示的内容有误。 这种错误的产生有两种可能 前端代码写的文案错误接口返回值错误 功能…