AWS-解析mysql binlog同步数据方案

news2024/9/23 13:27:46

虽然是公有云的鼻祖,AWS在某些产品的实现却太不给力;可能是习惯了阿里云喂到嘴边的感觉,AWS很多方案需要自己折腾,蛋疼!比如这里要讲的mysql数据同步方案。

阿里云产品DTS,点几下就OK了,AWS,只能通过插件安装、配置、调试、蹚坑……,具体就是用msk的debezium插件连接器。没见识过的一脸懵逼,下面说下配置步骤和一些注意的坑。

1.前提

安装好rds和msk

rds:binlog_format=row,打开log_bin

msk:auto.create.topics.enable=true

2.安装debezium插件

(1)下载安装包,并将其上传到S3的某个bucket;

https://repo1.maven.org/maven2/io/debezium/debezium-connector-mysql/1.9.7.Final/debezium-connector-mysql-1.9.7.Final-plugin.zip

(2)通过浏览S3或直接输入文件URI:

注意坑:AWS控制台的这个功能需要有梯子才行,否则:“浏览S3”找不到你的桶,直接输入文件URI自动检查文件也提示失败:Network Failure。

(3)安装后就有了:

3.安装msk连接器

3.1.选择自定义插件
3.2.连接器配置

说明:

connector.class=io.debezium.connector.mysql.MySqlConnector  #固定写法
database.hostname   # db IP或域名
database.user       # db username
database.password   # db 密码
database.port=3306  # db 端口
database.server.id=1001  # 编号,db范围唯一
tasks.max=1              # 任务并发数
database.server.name=omp-user   # DDL语句的topic,程序消费用
include.schema.changes=true     # 包含DDL
database.include.list=yunkc_db  # db范围
table.include.list=yunkc_db.t1,yunkc_db.t2  # 表范围
database.history.kafka.topic=cdc1           # DDL语句,内部用,消费者不要消费该topic
database.history.kafka.bootstrap.servers    # kafka bootstrap server地址
3.3.为mskconnect创建角色
3.4.日志配置

注意:一定要配置,否则报错无法排查

4.消息

捕获数据变化
./kafka-console-consumer.sh --bootstrap-server xxxxxx --topic omp-user.yunkc_db.t1
Struct{before=Struct{id=1},after=Struct{id=2},source=Struct{version=1.9.7.Final,connector=mysql,name=omp-user,ts_ms=1678348957000,db=yunkc_db,table=t1,server_id=351097349,file=mysql-bin-changelog.000001,pos=344,row=0,thread=16},op=u,ts_ms=1678348957646}
Struct{before=Struct{id=2},after=Struct{id=3},source=Struct{version=1.9.7.Final,connector=mysql,name=omp-user,ts_ms=1678349029000,db=yunkc_db,table=t1,server_id=351097349,file=mysql-bin-changelog.000001,pos=611,row=0,thread=16},op=u,ts_ms=1678349029762}
Struct{before=Struct{id=3},after=Struct{id=4},source=Struct{version=1.9.7.Final,connector=mysql,name=omp-user,ts_ms=1678349036000,db=yunkc_db,table=t1,server_id=351097349,file=mysql-bin-changelog.000001,pos=878,row=0,thread=16},op=u,ts_ms=1678349036808}

捕获结构变化
./kafka-console-consumer.sh --bootstrap-server xxxxxx --topic omp-user
Struct{source=Struct{version=1.9.7.Final,connector=mysql,name=omp-user,ts_ms=1678349943178,db=yunkc_db,table=t2,server_id=351097349,file=mysql-bin-changelog.000001,pos=1287,row=0},databaseName=yunkc_db,ddl=create table t2(id int),
tableChanges=[Struct{type=CREATE,id="yunkc_db"."t2",table=Struct{defaultCharsetName=utf8,primaryKeyColumnNames=[],columns=[Struct{name=id,jdbcType=4,typeName=INT,typeExpression=INT,position=1,optional=true,autoIncremented=false,generated=false}]}}]}

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

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

相关文章

06_01_Spark SQL

Spark SQL 课程目标 说出Spark Sql的相关概念说出DataFrame与RDD的联系独立实现Spark Sql对JSON数据的处理独立实现Spark Sql进行数据清洗 1、Spark SQL 概述 Spark SQL概念 Spark SQL is Apache Spark’s module for working with structured data. 它是spark中用于处理结…

百家号如何写文章赚钱,百家号写文章真的赚钱?

随着互联网的快速发展,越来越多的人开始关注到写文章赚钱这个领域。而在众多写作平台中,头条号无疑是最受欢迎的一个。那么,百家号写文章赚钱是真的吗?如何写文章赚钱呢?下面我们就来一一解答。 首先,百家号…

Javascript的ES6 class写法和ES5闭包写法性能对比

看到很多闭包写法的函数, 一直怀疑它对性能是否有影响. 还有就是备受推崇的React Hooks函数式写法中出现大量的闭包和临时函数, 我很担心这样会影响性能. 于是, 做了一个实验来做对比. 这个实验很简单, 用md5计算一百万次. 计算过程将结果再放回参数, 这样避免结果没被引用被…

Git 学习(三)—— 本地仓库 — 远程仓库的操作命令

为了可以让其他用户看到自己的成果,我们可以将自己本地仓库的内容上传到远程仓库;如果我们希望借鉴其他用户的成果,我们可以将远程仓库里的一些内容拉取或者克隆到本地仓库。 这里先暂不考虑 本地到远程 或者 远程到本地 的一些相关操作&…

避坑指南—GPL开源协议

0x00 前言 本文主要目的是为了了解一些基础的GPL注意事项,以及防止被一些一知半解的人蒙骗。本文不做任何内容的依据,仅为个人见解,仅供参考。 一些常见的开源协议 GPLBSDMITMozillaApacheLGPL 0x01 GPL GPL许可协议(GNU General Public …

知识点——域适应、域泛化、在线测试适应区别 DA、DG、TTA区别

文章目录1.Domain Adaptation( DA:域适应 )源域和目标域:DA研究问题:DA目标:DA主要思想:DA三种方法:2.Domain generalization( DG:域泛化 )DG研究问题:DG目标:DA和DG优点…

css——图片缩放,拉伸,变形的解决办法

你的图片即将变得超级丝滑图片为什么会拉伸变形?怎么解决?css的object-fit属性object-fit属性有什么用介绍一下object-position举个小栗子图片为什么会拉伸变形? 前端布局时,图片会出现拉伸、缩放和变形的原因可能有多种: 1.例如图…

2.3操作系统-存储管理:页式存储、逻辑地址、物理地址、物理地址逻辑地址之间的地址关系、页面大小与页内地址长度的关系、缺页中断、内存淘汰规则

2.3操作系统-存储管理:页式存储、逻辑地址、物理地址、物理地址逻辑地址之间的地址关系、页面大小与页内地址长度的关系、缺页中断、内存淘汰规则页式存储逻辑地址、物理地址如何判断物理地址和逻辑地址它们之间的地址关系?页面大小与页内地址长度的关系…

现货交易入门之垂死挣扎

本文讲解的也是挣扎形态,前面以已经讲过一个挣扎形态,但是本文这个形态的名字更让人能耳目一新,因为它叫“垂死挣扎线”,这并不是普通的挣扎线。是“垂死”的! “垂死挣扎线”与“顶部挣扎线”很相似,都是出…

JavaApi操作ElasticSearch(强烈推荐)

ElasticSearch 高级 1 javaApi操作es环境搭建 在elasticsearch官网中提供了各种语言的客户端:https://www.elastic.co/guide/en/elasticsearch/client/index.html 而Java的客户端就有两个: 不过Java API这个客户端(Transport Client&#…

element-ui日期选择器时间差

关于使用element-ui日期选择器时,发现时间差问题,特此记录下 #主要记录三个问题 日期选择器选择时获取到的格式相差八小时当日期格式为–拼接时,转成时间戳会相差八小时(2023-03-09)DatePicker设置区域范围和校验&…

TiDB数据库架构概述

文章目录TiDB体系架构TiDB ServerStorage Cluster(存储引擎)PD cluster题目TiDB体系架构 TiDB Server Sql语句最先到达 TiDB Server集群 它是无状态的,数据并不是存储在这里面,当一个会话连接到TiDB Server集群上,sql语句发过来&#xff0c…

大数据自学学习技巧?

经常有人说:先别管大数据是什么,现在理解不了没关系,先开始学,等学着学着就明白了,这种学习路线基本是混合的,很难分清楚自己学了这段怎么用在以后项目中,所以会越学越迷茫,但是等你…

机房漏水设备受损,一招轻松避免

随着科学信息技术的发展和社会经济的快速发展,计算机系统得到了广泛的应用,计算机房设备中使用的设备越来越多。 漏水对机房内精密电子设备容易造成损坏,电器短路等。一旦机房发生漏液,水流到线槽,会导致机房断电,造成…

IPv6公共DNS现在提供加密DNS查询

支持DoT/DoH DoT:dns.ipv6dns.comDoH:https://dns.ipv6dns.com/dns-query为什么需要加密DNS 配置: Windows 10/8/7 1 右键网络进入属性或者右键右下角的Inernet进入网络共享中心,如下图: 2 点击网络和共享中心左侧的"更改适配器设置"链接,如下图: 3 选中正…

一文读懂pinia Vue状态管理

文章目录1.概述:2. 准备工作3.pinia 安装及使用3.1. 安装pinia3.2 store的创建和使用3.3 getters 使用3.4 action 的使用3.5 总结示例代码4.总结1.概述: pinia 类似与vue2 中的vuex ,实现跨页面共享状态管理,类似与java 中的sess…

Git设置SSH Key

一、git 配置 (1)打开 git 命令窗口 (2)配置用户名(填自己的姓名) git config --global user.name “xinyu.xia” (3)配置用户邮箱(填自己的邮箱&#xff0…

在SNAP中用sentinel-1数据做DInSAR测量---以门源地震为例

在SNAP中用sentinel-1数据做DInSAR测量---以门源地震为例0 写在前面1 数据下载2 处理步骤2.1 split2.2 apply orbit 导入精密轨道2.3 查看数据的时空基线base line2.4 back-geocoding 配准2.5 Enhanced Spectral Diversity2.6 Deburst2.7 Interogram Formation 生成干涉图2.8 M…

【Unity3D日常开发】Unity3D中协程的使用

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 最近有小伙伴问协程怎么用、怎么写,我也是会用会写…

Revit管理链接模型视图样式和链接CAD

一、Revit中如何管理链接模型的视图样式 Revit软件协同,无非就两种方式:1、工作集;2、链接文件。其中“工作集”属于软件内部的工作协调方式,不是我们本期问题汇总要说明的问题,这里我们着重说一下第二种关于“链接文件”方式协同…