mysql 开源订阅模式_Canal(增量数据订阅与消费 )快速配置
模拟mysql的主从备份读取bin-log文件的机制,阿里开源项目,实现对mysq的日志文件的解析;
搭建步骤:
1.开启mysql的binlog功能,并配置binlog模式为row
[mysqld]
log-bin=mysql-bin #添加这一行就ok
binlog-format=ROW #选择row模式
server_id=1 #配置mysql replaction需要定义,不能和canal的slaveId重复
2.在mysql中 配置canal数据库管理用户,配置相应权限(repication权限)
CREATE USER canal IDENTIFIED BY 'canal';
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
-- GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' ;
FLUSH PRIVILEGES;
4.解压,修改配置文件
mysql serverId,改成唯一的
vim conf/example/instance.properties
canal.instance.mysql.slaveId = 129
position info,需要改成自己的数据库信息
canal.instance.master.address=192.168.21.134:3306
username/password,需要改成自己的数据库信息
canal.instance.dbUsername=canal
canal.instance.dbPassword=canal
canal.instance.defaultDatabaseName=test 指定数据库
canal.instance.connectionCharset=UTF-8
table regex
canal.instance.filter.regex=.*\\..*
5、修改 conf/canal.properties 文件
canal.ip 改成canal所在机器的ip地址,避免无谓的问题 canal.id= 128
canal.ip=192.168.21.134:
canal.port= 11111
启动
bin 下的startup脚本
查看日志 example 下
运行canal-client实例:
添加pom依赖:
com.alibaba.otter
canal.client
1.0.12
import com.alibaba.otter.canal.client.CanalConnector;
import com.alibaba.otter.canal.client.CanalConnectors;
import com.alibaba.otter.canal.protocol.Message;
import java.net.InetSocketAddress;
/**
* @ClassName Demo
* @Description TODO
* @Author liang
* @Date 2018\10\9 0009 10:25
* @Version 1.0
**/
public class Demo {
public static void main(String [] args)throws InterruptedException {
CanalConnector connector = CanalConnectors.newSingleConnector(
new InetSocketAddress("192.168.26.134",11111),"example","","");
connector.connect();
connector.subscribe(".*\\..*");
while (true) {
Message message = connector.getWithoutAck(100);
long batchId = message.getId();
System.out.println(batchId);
if (batchId == -1 || message.getEntries().isEmpty()) {
Thread.sleep(3000);
}else {
System.out.println(message.getEntries());
connector.ack(batchId);
}
}
}
}
mysql 开源订阅模式_Canal(增量数据订阅与消费 )快速配置相关推荐
- 开源基于Canal的开源增量数据订阅消费中间件
canal 是阿里巴巴开源的一款基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 我开发的这个CanalSync项目 https://gith ...
- 谈谈对 Canal( 增量数据订阅与消费 )的理解--大数据平台技术栈系列(3)
之前说了,大数据平台技术栈 (可点击查看),今天就来说说其中的Cannal 来源:朱小厮, blog.csdn.net/u013256816/article/details/52475190 概述 c ...
- 谈谈对Canal( 增量数据订阅与消费 )的理解
原文出处: 朱小厮 概述 canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 起源:早期 ...
- 谈谈对Canal(增量数据订阅与消费)的理解
欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 欢迎跳转到本文的原文链接:https: ...
- 神州优车开源业界领先的增量数据同步中间件——DataLink
项目介绍 名称: DataLink['deitə liŋk] 译意: 数据链路,数据(自动)传输器 语言: 纯java开发(JDK1.8+) 定位: 满足各种异构数据源之间的实时增量同步,一个分布式. ...
- 数据传输服务 DTS > 产品简介 > 功能特性 > 数据订阅(新版)
数据订阅(新版) 更新时间:2020-08-26 15:35:45 编辑我的收藏 本页目录 优惠活动 功能特性 消费组介绍 支持订阅的数据库类型和版本 支持的语言 支持的数据类型和订阅对象 数据订阅通 ...
- 数据传输服务 DTS > 产品简介 > 功能特性 > 数据订阅(旧版)
数据订阅(旧版) 更新时间:2020-07-14 11:16:50 编辑我的收藏 本页目录 支持订阅的实例类型 订阅对象 订阅通道 高级特性 实时数据订阅功能旨在帮助用户获取RDS MySQL.DRD ...
- 设计模式-发布订阅模式
这段时间在看vue的双向绑定原理,知道了vue的核心三大件:Observer, Complie, Watcher. Observer用于监听属性的变化,如有变动就通知 Watcher. Compile ...
- (需求实战_进阶_06)SSM集成RabbitMQ 订阅模式 关键代码讲解、开发、测试
背景: 为了减轻服务器的压力,现在原有项目的基础上集成消息队列来异步处理消息! 此项目是企业真实需求,项目的代码属于线上生产代码,直接用于生产即可! 此项目采用MQ发送消息模式为:订阅模式,如果对Ra ...
最新文章
- sqlplusw下登录sys账户
- 127.0.0.1和0.0.0.0地址的区别
- 完美解释了递归,哈哈哈哈
- 0x04.基本算法 — 二分和三分
- Python学习之关键要素
- php svn up,php中执行svn update问题
- MSSQL SERVER 2005 数学函数
- android设计招式之美,麦可网Android设计招式之美
- HTML5中Web Worker技术的使用实例
- 43 FI配置-财务会计-固定资产-一般评估-定义折旧范围
- NodeJS管理利器 - pm2常用命令
- UVA148 ZOJ1166 Anagram checker【DFS】
- 自定义View之HenCoder学习笔记
- devcpp 的各种快捷键
- Ubuntu 安装 OpenCV(亲测有效)
- Windows10下取消五笔输入法Shift+Space全角半角切换
- 如何把网站从万网转到百度的服务器,百度域名服务上线“域名转入”功能 附转入教程...
- python自然语言_Python自然语言处理 - 随笔分类 - 牛皮糖NewPtone - 博客园
- 达人评测 酷睿i7 1195g7和i7 1260p对比选哪个
- git clone报错:repository ‘xxxxxxxxx’does not exist
热门文章
- 【Elasticsearch】es 各种 日志 慢日志 慢查询
- 【Flink】Flink打包Could not resolve dependencies flink-statebackend-rocksdb_2.11:jar:1.9.1
- 【hadoop】ipc.Client: Retrying connect to server: xxx:8020. Already tried 37 time(s) RetryPolicy[Multi
- mac下ssh 报错:localhost: ssh: connect to host localhost port 22: Connection refused
- Kylin 2.6.0JDBC方式访问
- Java中含有泛型的 JSON 反序列化问题
- leetcode题解3-无重复字符的最长子串
- js 跳转到 百度指定地址定位点
- 【转】工作站和服务器的区别
- 由系统调用想起的。。。