flink-connector-mysql-cdc

news2024/11/24 13:36:44

FlinkCDC是一个实现CDC(Change Data Capture)思想的数据同步工具。 借助于Flink CDC Connector ,它监听数据库的二进制日志文件,来获取数据库变更的数据,以此实现数据同步。

1. 下载Flink 及 对应版本的 Flink CDC

FlinkCDC 支持的 Connectors and Version

FlinkCDC 支持的 Flink Versions

下载 mysql-cdc connector 放入 FLINK_HOME/lib

启动Flink Cluster : Flink_HOME/bin/start_cluster.sh

① 除了使用Flink CDC连接数据库外,也可以使用jdbc方式连接数据库。Flink CDC持续监听数据库二进制日志文件,以此捕获变更数据。而jdbc连接器允许读和写关系型数据库。
② 监听数据库变更的数据,既可以使用DataStream方式,也可以使用SQL

2. 开启MySQL的二进制日志

vim /etc/my.cnf

[mysqld]
server_id=1
log_bin = mysql-bin
binlog_format = ROW
expire_logs_days = 30 #这个配置在公司中不要配,这里是虚拟机环境,可以配置。	

重启MySQL数据库 :systemctl restart mysqld

3. mysql-cdc实时捕获MySQL变更数据

建表规则
1.字段名必须相同
2.数据类型必须匹配上
3.FlinkSQL中的表名无所谓,不需要和MySQL中的源表一样

create table f_student (
	s_id string primary key not enforced,
	s_name string,
	s_birth string,
	s_sex string
) with (
	'connector' = 'mysql-cdc',
	'hostname' = 'node1',
	'port' = '3306',
	'username' = 'root',
	'password' = '123456',
	'database-name' = 'test',
	'table-name' = 'Student',
	'scan.startup.mode' = 'initial',
	'server-time-zone' = 'Asia/Shanghai'
);

mysql-cdc实时捕获mysql数据库表Student中变更的数据,包括insert 、update、delete操作,通过select语句查看
select * from f_student ;
在这里插入图片描述

4. jdbc connetcor读写MySQL数据库

下载Flink jdbc Connector 放入 FLUME_HOME/lib

※ flink-docs-release-1.14 检查该路径是否和已安装的flink版本一样

下载MySQL数据库驱动 放入 FLUME_HOME/lib

CREATE TABLE f_score(
  s_id STRING,
  c_id STRING,
  s_score INT
) WITH (
   'connector' = 'jdbc',
   'url' = 'jdbc:mysql://node1:3306/test',
   'table-name' = 'Score',
   'username' = 'root',
   'password' = '123456'
);

flink jdbc connector 读取mysql中的数据,通过select语句查看读取的数据
select * from f_score;
在这里插入图片描述

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

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

相关文章

升级:远程桌面软件玩游戏指南

你有没有遇到过这样的场景:你想玩一款特定的游戏,但却受到设备功能的限制?这就是游戏远程桌面的概念变得非常宝贵的地方。从本质上讲,它允许您远程利用高端游戏计算机的功能,使您能够在自己的设备上玩游戏。 可以考虑…

四、JAVA语言基础

JAVA语言基础 JAVA语言基础1.1.Java主类结构1.1.1.包声明1.1.2.声明成员变量和局部变量1.1.3.编写主方法1.1.4.导入API类库 —————————————————————————————————————————————————— JAVA语言基础 很多人认为在学习Java语言之…

uni-app 之 文字分两行显示超出用省略号表示

uni-app 之 文字分两行显示超出用省略号表示 vue 将一大串文字分两行显示超出用省略号表示 通过css设置文字强制不换行超出用省略号表示: {white-space: nowrap; 文本强制不换行;text-overflow:ellipsis; 文本溢出显示省略号;overflow:hidden; 溢出的部…

QTabWidget 类 (选项卡部件)

1、 QTabWidget 类直接继承自 QWidget。该类提供了一个选项卡栏(QTabBar)和一个相应的页 面区域,用于显示与每个选项卡相对应的页面。 与 QStackedLayout 布局原理相同,只有 当前页面(即可见页面)是可见的,所有其他页面都不可见,用…

数字藏品交易系统有哪些特点?

数字藏品交易系统具有以下特点: 去中心化:数字藏品交易系统通常采用去中心化的架构,不依赖于单一的中央机构或权威来管理交易。这意味着交易可以在全球范围内进行,无需中间人。 区块链技术:大多数数字藏品交易系统借助…

小区物业管理缴费报修活动报名商城小程序开源版开发

小区物业管理缴费报修活动报名商城小程序开源版开发 以下是小区物业管理缴费报修活动报名商城小程序开源版的功能列表: 用户注册和登录小区信息展示(包括小区简介、周边设施等)物业公告显示和发布功能小区物业费用查询和缴费功能基础设施报…

解决安装wsl时候报错的问题: WslRegisterDistribution failed with error: 0x800701bc

在Win10 或者Win 11上安装wsl的时候,可能会遇到如下的错误信息: Error: 0x800701bc WSL 2 ?????????????????? https://aka.ms/wsl2kernel Press any key to continue... 这个是由于系统内置的WSL内核过低导致的,可以到如…

node的服务端对接科大讯飞-火星ai解决方案

序: 官方给的node对接火星的demo其实只适用于node开发的web应用,但是对于纯node 作为服务端,也就是作为webapi来调用,你会发现,location.host直接是获取不到location的。这个时候,其实要单独起个wss的服务的…

C盘满了,应该清理哪些地方

有时候电脑用着用着C盘就满了,其实大多数原因是因为C:\Users\用户名\AppData下的文件夹下被你的程序软件不断地塞入了各种文件导致的。几乎你在电脑上安装的每个程序都会在AppData 文件夹中创建自己的文件夹,并将该程序的所有相关信息存储在那里。 为了…

类模板深度剖析

类模板可以定义任意多个不同的类型参数 类模板可以被特化 可以指定类模板的特定实现 部分类型参数必须显示指定 根据类型参数分开实现类模板 类模板的特化类型 部分特化 - 用特定规则约束类型参数 完全特化 - 完全显示指定类型参数 类模板特化注意事项 特化只是模板的分开…

官宣 | 2023第四届ISIG中国产业智能大会报名开启

由企智未来科技(RPA中国、LowCode低码时代、AIGC开放社区)主办的第四届「ISIG中国产业智能大会」将于12月初在上海召开,本届主题为“与科技共赢,与产业共进”。在此次大会中,我们将设立RPA超自动化、低代码/零代码、流…

docker-compose使用

docker-compose docker的项目编排 一、安装docker-compose Rocky Linux Rocky Linux安装Docker Compose的步骤如下: 安装Docker。您可以使用以下命令安装Docker: sudo dnf install docker-ce docker-ce-cli containerd.io安装Docker Compose。您可以…

渗透中 POC、EXP、Payload、Shellcode 的区别

渗透中 PoC、Exp、Payload、Shellcode 的区别 不同含义: POC Proof of Concept中文意思是“观点证明”。这个短语并非仅仅在漏洞报告中使用,甲方在项目招标过程中也常常要求乙方提供POC,即证明你的方案或者产品能达到声称的功能或性能&…

VMware ESXI vCenter 开启 SNMP 方法:

需要监控 ESXI 和 vSphere 系统的状态,开启默认的 SNMP 一、VMware ESXI 开启 SSH 登录到ESXI上执行命令如下: [rootESXI:~] esxcli system snmp set --enable true [rootESXI:~] esxcli system snmp set --communities public [rootESXI:~] esxcli …

IPO解读丨“停车场”以外的故事,智慧互通如何书写?

智能交通赛道或将迎来一家上市公司。 近日,智慧互通科技股份有限公司(下称“智慧互通”)在河北证监局进行上市辅导备案登记,辅导机构为中信证券。 这家成立于2015年的公司,致力于用AI赋能交通,打造城市级…

中国又一利器”遥遥领先″?纳米RAM市场增长趋势正式超越美国!

纳米RAM是一种前沿的存储技术,利用纳米级工艺技术制造而成,具有极高的存储密度和读写速度。相较于传统的RAM技术,纳米RAM具有更高的可靠性、更低的能耗以及更强的耐久性。这些优势使得纳米RAM成为未来高密度存储和高速计算领域极具潜力的技术…

ros2 安装UR机器人仿真包

1.ros2的版本如下 2.在码云上找到UR驱动包 GitHub很多时候都是无法打开的,但是码云可以复制这个GitHub上的包,别人已经复制好了。可以用连接如下: universal_robots_ros2_driver 3.查看该包的readme文件 这里面有介绍使用二进制安装&#…

RHEL8安装FreeIPA客户端

RHEL8安装FreeIPA客户端 1、在FreeIPA服务器上创建一个用户2、为ipa客户端机器添加DNS记录2.1 在ipa客户机器上配置hosts 3、在客户机上安装FreeIPA客户端4、配置FreeIPA 客户端5、测试FreeIPA客户端5.1 首次登录修改密码 1、在FreeIPA服务器上创建一个用户 参考:h…

可以实时监控电脑的软件有哪些?

在当今的数字化世界中,计算机已经成为我们生活和工作中不可或缺的一部分。然而,随着计算机使用的普及,安全问题也日益突出。为了保护我们的计算机和数据,实时监控电脑的使用情况变得越来越重要。本文将为您介绍一些实时监控电脑的…

1688全店商品采集教程,1688店铺所有商品接口(详解1688店铺所有商品数据采集步骤方法和代码示例)

随着电商行业的快速发展,1688已成为国内的电商平台之一,拥有着海量的商品资源。对于一些需要大量商品数据的商家或者需求方来说,1688全店采集是非常必要的。本文将详细介绍1688全店采集的步骤和技巧,帮助大家更好地完成数据采集任…