maxwell小白入门

news2024/11/19 1:45:33

执行同步binlog数据命令路径

maxwell安装目录下执行启动命令

增量同步命令:

./bin/maxwell --config ./conf/meituan(文件目录)/具体配置文件名.properties --daemon

采集历史数据

./bin/maxwell-bootstrap --config ./conf/meituan(文件目录)/具体配置文件名.properties --database maicai_bigdata --table price_table --client_id meituan_maicai_cps_prod

完成配置文件

# tl;dr config
log_level=info

producer=kafka

#ddl_kafka_topic=maxwell_ddl
#output_ddl=true

#init_position=binlog.000155:426808694:0

# 创建maxwell库所在主机
host=存储maxwell元数据的mysql url
#mysql用户名
user=存储maxwell元数据的mysql 用户名
#mysql密码
password=存储maxwell元数据的mysql 密码
#端口
port=存储maxwell元数据的mysql 端口(一般是3306,也有不为3306的mysql端口)
#maxwell唯一实例
client_id=本着一个配置文件一个client_id原则设置
# 创建的储存同步信息的库
schema_database=存储maxwell元数据的mysql 库名


#监听的mysql配置信息
replication_host=maxwell监听表所在的mysql url
replication_user=maxwell监听表所在的mysql 用户名
replication_password=maxwell监听表所在的mysql 密码
replication_port=maxwell监听表所在的mysql 端口



#     *** kafka ***
kafka.bootstrap.servers=大数据集群 kafka server 
kafka.compression.type=snappy
kafka.retries=5
kafka.acks=all
kafka.enable.idempotence=true
#kafka_topic=qy_%{database}_%{table}
kafka_topic=存放采集到的binlog数据kakfa topic(最好在采集前手动建好三分区三副本kafka topic,系统自动创建的kafka topic不是三分区三副本)
# 创建三分区三副本kafka topic (kafka安装目录下的bin目录下)
# kafka-topics.sh --bootstrap-server test002:9092,test003:9092,test004:9092 --create --topic dwd_kyy_db_glory_user_kafka2kafka --partitions 3 --replication-factor 3

jdbc_options = useSSL=false&serverTimezone=Asia/Shanghai
replication_jdbc_options = useSSL=false&serverTimezone=Asia/Shanghai

#filter=exclude: *.*,include: cps.admin

# 该ID不能与mysql my.cnf中的一样,也不能与其他监控同一个库的CDC中配置id一样
replica_server_id=1684391561


filter=exclude: *.*,include: maicai_bigdata.price_table
#http_config=true
#     *** general ***
# choose where to produce data to. stdout|file|kafka|kinesis|pubsub|sqs|rabbitmq|redis
#producer=kafka

# set the log level.  note that you can configure things further in log4j2.xml
#log_level=DEBUG # [DEBUG, INFO, WARN, ERROR]

# if set, maxwell will look up the scoped environment variables, strip off the prefix and inject the configs
#env_config_prefix=MAXWELL_

#       *** output format 输出格式***

# records include binlog position (default false)
output_binlog_position=true

# DML records include list of values that make up a row's primary key (default false)
output_primary_keys=true

# DML records include list of columns that make up a row's primary key (default false)
output_primary_key_columns=true

添加监听表

先搜进程
ps -ef|grep Maxwell(也可以搜 maxwell)

然后 kill掉(注意不是kill - 9)
kill + 进程号(搜到的进程号) 

直接在filter=exclude: *.*,后边加上库名.表名


重新启动增量进程(先启动增量进程,再启动全量进程[同步历史])
增量同步命令:
./bin/maxwell --config ./conf/meituan(文件目录)/具体配置文件名.properties --daemon
采集历史数据
./bin/maxwell-bootstrap --config ./conf/meituan(文件目录)/具体配置文件名.properties --database maicai_bigdata --table tianjia_table --client_id meituan_maicai_cps_prod

在这里插入图片描述
终止同步历史进程

如果需要同步的表历史binlog日志数据比较多,耗费时间较长,中途不想同步了,需要停止历史同步进程

别 ctrl + c 终止
需要 ps -ef|grep Maxwell 找到同步历史数据进程(一般有bootstrap字样)
用kill + 搜索到的进程号

解决异常终止maxwell采集历史数据进程

如果终止同步历史进程没那么顺利,后边maxwell可能会受到影响(异常终止
同步历史数据进程的影响),而导致maxwell不健康

下图是盛放maxwell元数据的库表,其中有一张 bootstrap表

在这里插入图片描述

找到同步历史数据表的那一条数据,该条数据有一个 completed_at 字段,
将这条数据的该字段值修改为 1 

解决Maxwell报错RuntimeException: Couldn‘t find database(一般这个库都是采集url里的库) xxx

1. 有没有开启binlog
SHOW VARIABLES LIKE 'log_bin'; -- 可以在采集url里执行一下 (on 是已经开放,off 尚未开放)
2. 已经开启binlog 但是还是报此异常
 那可能是采集文件中给到的 需要采集库表url 对应的用户 权限不足
例如: 买菜部门数据库url下有 shouguo库,shucai库 现在只需要分析蔬菜相关指标,故只需要采集shucai库下的库表
    但是 蔬菜,水果 库下表产生的binlog日志混合滚动写到相应的binlog日志文件中
	(这样理解一个binlog文件中包含蔬菜,水果两个库下的binlog日志数据)
	如果此时我们从运维老师那拿到的用户权限仅有蔬菜库的访问权限(即便是读写权限,也是没法去抓取binlog日志文件的)

如果启动 maxwell 进程有问题,网上百度搜索需要清除 maxwell元数据

先尝试清(仅清) positions 表里相关数据,再试着去启动
如果不行,问题还没解决那就把各个表里的相关数据清理一下,再去重新启动

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

javaIO流之缓冲流

目录 简介1、字节缓冲流1.1构造方法1.2缓冲流的高效1.3为什么字节缓冲流会这么快?1.4byte & 0xFF 2、字符缓冲流2.1构造方法2.2字符缓冲流特有方法 3、练习 简介 Java 的缓冲流是对字节流和字符流的一种封装,通过在内存中开辟缓冲区来提高 I/O 操作…

Kotlin DSL 现已成为全新 Gradle 构建的默认设置

作者 / Kotlin 产品经理 James Ward、开发者关系工程师 Boris Farber 四年来,Android 一直贯彻 "Kotlin 优先" 的原则,许多 Android 开发者已经做出了改变,陆续推出了效率更高、性能更稳定的应用。然而,尽管 Kotlin (bu…

2023—Unity打包Pico4(3)全流程(Pico插件)

一、项目选择了2021.3.0版本的URP,把项目Build成Android 二、打开Project Setting→ 安装最下面的XR Plugin Management 安装完成后的界面,此时还没有Pico选项出现 三、我们需要在该网站下载Pico的SDK包 picoxr/VRTK-Support (github.com) 解压该文件到…

理解搜索引擎优化

我们需要了解搜索引擎如何对网站进行排名,并优化我们的网站以便于搜索引擎的抓取,这被称为SEO(搜索引擎优化)。 搜索引擎的工作分为三个阶段: •爬虫读取页面内容(HTML代码)并跟随超链接读取更多…

VR数字乡村:打造乡村振兴新通道,让乡村“走出去”

VR数字乡村是基于VR全景技术来振兴农村经济,并改善农村生活的一种发展模式。在建设数字化乡村的背景下,VR全景技术在改造升级农村农业、养殖管理、设备生产等多个方面都有积极的作用。 乡村振兴的难题就在于如何走出去,如何宣传自身&#xff…

聚观早报 |腾讯Q1营收重回两位数增长;特斯拉向印度政府提议建厂

今日要闻:腾讯Q1营收重回两位数增长;传特斯拉向印度政府提议建厂;ChatGPT创始人呼吁加强对AI监管;笑果被罚款1335万;药明康德联合创始人赵宁去世 腾讯Q1营收重回两位数增长 5 月 17 日,腾讯控股发布 2023 …

代理、正向代理与反向代理

一、代理 1.1 什么是代理 代理也被叫做网络代理,是一种比较特殊的网络服务,允许一个终端(通常指客户端)通过这个服务与另一个终端(通常指服务器端)进行非直接的连接。例如:一些网关、路由器等…

C语言递归算法实现经典例题

一.递归 1.什么是递归 递归是一种编程技术,它通过在函数内部反复调用自身来解决问题。当一个程序调用自己时,这就称为递归调用。递归可以有助于简化某些算法的实现和理解。在递归过程中,每个调用都会将一些数据保存在栈上,直到递…

【HISI IC萌新虚拟项目】Package Process Unit模块整体方案·PART1

1.背景 网络中包是个重要概念,很多信息在网络中以包的形式传输。而传输介质容易受到外界环境干扰导致传输错误,因此需要在传输过程中进行数据校验、过滤等包处理。包处理和包转发是信息传输的重要处理方式,本芯片实现简单的包处理和包转发机制。 包处理过程中需要用到缓存…

神经网络:Zero2Hero 1 - Simple Language Model

Zero → \to → Hero : 1 实现了一个字符级中文语言模型,数据采用的是开源中文姓名数据集中的一部分,主要内容如下: 字符的预处理 统计频次计算字符对频次矩阵 实现一个简单的先验概率模型 从训练数据中计算字符的先验概率根据先验概率通过…

渗透测试--4.捕获和监听数据

目录 目录 1.监听捕获数据方法 2.kali监听捕获工具介绍 arpspoof arpspoof实战(同一局域网断网实战) driftnet 实战使用drifnet和工具捕获网络图片 1、扫描目标主机,开启ip转发 2、打开ettercap 3、进行arp欺骗: 4、使用drif…

Gap Hours,我在内卷和摆烂之间的折中选择

点击文末“阅读原文”即可参与节目互动 剪辑、音频 / 卷圈 运营 / SandLiu 卷圈 监制 / 姝琦 文案 / 粒粒 产品统筹 / bobo 场地支持 / 声湃轩天津录音间 一个名词解释: Gap Day,是工作和生活中为了从不好的状态中跳脱出来,享受了躺平…

技术支持内容

平台技术简介: 前端:采用Vue、uni-app等技术。 后端:采用Spring Boot 。 权限:采用Jwt,支持多终端认证系统。 邮箱: postmasterzhonghuisoft.cn 平台基础功能: 用户管理: 管理…

常数整数乘法优化

常数整数乘法优化 文章目录 常数整数乘法优化基于正则有符号数的常数整数乘法优化Example 1: 20 x 20x 20xExample 2: 153 x 153x 153xExample 3: 15 x 15x 15x正则有符号数编码 CSD二进制序列转CSD编码算法流程代码实现欢迎关注公众号【三戒纪元】 嵌入式机器学习或深度学习…

人工智能的机器人技术为啥那么强,对于未来意味着什么?

前言 人工智能技术的发展,推动了机器人技术的不断进步。机器人技术在工业、医疗、服务等领域发挥着越来越重要的作用。本文将详细介绍人工智能的机器人技术。 机器人技术的发展历程 机器人技术的发展可以追溯到20世纪50年代。当时,机器人主要用于工业生…

怎么给移动硬盘查错?移动硬盘查错能恢复数据吗

移动硬盘在长期使用或使用不当的情况下,可能会出现硬盘文件损坏或者出现坏道等问题,影响数据安全和文件操作。这时候,移动硬盘查错工具就派上用场了。它可以帮助用户发现移动硬盘中的问题,并且还可以对移动硬盘进行修复。 但是&a…

chatgpt赋能Python-python3_7怎么改颜色

Python3.7中如何改变颜色的方法 Python是一门广泛应用于各种领域的编程语言,其强大的数据分析能力和简单易用的语法得到了越来越多的开发者的青睐。在Python中,要想使文本在输出时带有颜色,可以使用ANSI转义序列进行操作。 什么是ANSI转义序…

国考省考行测:数量关系,消三法,比,分数,百分数,n倍

国考省考行测: 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能,附带行测和申论,而常规国考省考最重要的还是申论和行测,所以大家认真准备吧,我讲一起屡屡申论和行测的重要知识点 遇到寒冬&am…

spring数据校验:Validation

目录 Spring Validation概述 通过Validator接口实现 Bean Validation注解实现 基于方法实现校验 实现自定义校验 Spring Validation概述 在开发中,我们经常遇到参数校验的需求,比如用户注册的时候,要校验用户名不能为空、用户名长度不超…

从眼中窥视:Google AI 模型如何通过眼睛预测你的年龄

新的模型可以通过分析眼部照片揭示衰老的秘密 近年来,谷歌一直在研究各种人工智能模型,可以分析眼睛(内部和外部)的图像并监测某些参数。正如之前提到的,开发能够从眼睛中提取信息的 AI 模型意味着能够以经济高效和无创…