当前位置: 首页 > 文档资料 > Canal 中文文档 >

简介

优质
小牛编辑
133浏览
2023-12-01

简介

canal [kə'næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费

工作原理

  • canal 模拟 MySQL slave 的交互协议,伪装自己为 MySQL slave ,向 MySQL master 发送 dump 协议
  • MySQL master 收到 dump 请求,开始推送 binary log 给 slave (即 canal )
  • canal 解析 binary log 对象(原始为 byte 流)

QuickStart

See the page for quick start: [[QuickStart]].

ClientExample

See the page for quick start: [[ClientExample]].

AdminGuide

See the page for admin deploy guide : [[AdminGuide]]

Canal-Admin WebUI

See the page for admin deploy guide : [[Canal Admin Guide]]

重要版本更新说明

  1. canal 1.1.x 版本(release_note),性能与功能层面有较大的突破,重要提升包括:

  2. 整体性能测试&优化,提升了150%. #726 参考: Performance

  3. 原生支持prometheus监控 #765 Prometheus QuickStart
  4. 原生支持kafka消息投递 #695 Canal Kafka/RocketMQ QuickStart
  5. 原生支持aliyun rds的binlog订阅 (解决自动主备切换/oss binlog离线解析) 参考: Aliyun RDS QuickStart
  6. 原生支持docker镜像 #801 参考: Docker QuickStart

  7. canal 1.1.4版本,迎来最重要的WebUI能力,引入canal-admin工程,支持面向WebUI的canal动态管理能力,支持配置、任务、日志等在线白屏运维能力,具体文档:[[Canal Admin Guide]]

多语言

canal 特别设计了 client-server 模式,交互协议使用 protobuf 3.0 , client 端可采用不同语言实现不同的消费逻辑,欢迎大家提交 pull request

canal 作为 MySQL binlog 增量获取和解析工具,可将变更记录投递到 MQ 系统中,比如 Kafka/RocketMQ,可以借助于 MQ 的多语言能力

版本

<dependency>
    <groupId>com.alibaba.otter</groupId>
    <artifactId>canal.client</artifactId>
    <version>1.1.4</version>
</dependency>

最后更新:

类似资料

  • 测试环境 类型 配置 MySQL A + Canal Server Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz (24core 96G) MQ(kafka/RocketMQ) Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz (24core 96G) 测试方式 混合的DML场景测试 (模拟业务场景,小事务) 混合2张表的inse

  • 背景 canal-admin设计上是为canal提供整体配置管理、节点运维等面向运维的功能,提供相对友好的WebUI操作界面,方便更多用户快速和安全的操作 准备 首先确保你先完成了canal-admin的基本部署和运维指南,请参考: [[Canal Admin QuickStart]] [[Canal Admin Guide]] 设计理念 引入了canal-admin之后,canal-server

  • 参考资料 Canal Admin QuickStart : [[Canal Admin QuickStart]] Canal Admin Guide : [[Canal Admin Guide]] Canal Admin ServerGuide : [[Canal Admin ServerGuide]] Dockerfile canal-admin Dockerfile文件:https://git

  • 背景 canal-admin设计上是为canal提供整体配置管理、节点运维等面向运维的功能,提供相对友好的WebUI操作界面,方便更多用户快速和安全的操作 准备 首先确保你先完成了canal-admin的基本部署,请参考: [[Canal Admin QuickStart]] 设计理念 canal-admin的核心模型主要有: instance,对应canal-server里的instance,一

  • 背景 canal-admin设计上是为canal提供整体配置管理、节点运维等面向运维的功能,提供相对友好的WebUI操作界面,方便更多用户快速和安全的操作 准备 canal-admin的限定依赖: MySQL,用于存储配置和节点等相关数据 canal版本,要求 >=1.1.4 (需要依赖 canal-server 提供面向admin的动态运维管理接口) 部署 下载 canal-admin, 访问

  • 基本说明 canal 1.1.1版本之后, 默认支持将canal server接收到的binlog数据直接投递到MQ, 目前默认支持的MQ系统有: kafka: https://github.com/apache/kafka RocketMQ : https://github.com/apache/rocketmq 环境版本 操作系统:CentOS release 6.6 (Final) java