前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Canal相关

Canal相关

作者头像
郑小超.
发布2022-09-23 18:47:12
7920
发布2022-09-23 18:47:12
举报
文章被收录于专栏:GreenLeaves

canal项目位于官方主页,是阿里开源的mysql binlog操作中间件,其介绍在主页都有.

1、git下载canal 

在主页的release目录,下载对应版本的canal即可

canal.deployer-1.1.6.tar.gz是canal的运行时,相关数据库的配置都在其下面.

canal.admin-1.1.6.tar.gz是canal的集群管理web站点,cannal可以集群部署

分别下载指定版本的以上所有内容

admin

2、安装jdk

canal运行依赖jdk,下载对应版本的jdk,windows下面需要配置环境变量

新增JAVA_HOME环境变量 值为jdk地址如:E:\jdk1.8.0_201\jdk1.8.0_201

PATH中新增%JAVA_HOME%\bin 路径

3、编写配置文件

参考官方文档Quick Start,配置如下:

canal支持集群部署,这里默认配置文件指向canal.destinations = example所以配置文件路径默认为\canal.deployer-1.1.6\conf\example下的instance.properties文件.这里可以用逗号分割,分配多个.

代码语言:javascript
复制
## mysql serverId
canal.instance.mysql.slaveId = 666(不能和集群中的节点一样)
#position info
canal.instance.master.address = 数据库地址 
canal.instance.master.journal.name = 
canal.instance.master.position = 
canal.instance.master.timestamp = 
#canal.instance.standby.address = 
#canal.instance.standby.journal.name =
#canal.instance.standby.position = 
#canal.instance.standby.timestamp = 
#username/password,需要改成自己的数据库信息
canal.instance.dbUsername = 数据库用户名
canal.instance.dbPassword = 数据库密码

4、配置canval admin 官方文档

canval admin是canval运行时集群管理web站点,用于管理所有的canal节点.

4.1 canal-template.properties 配置文件

位于conf文件夹下,主要配置解析如下:

代码语言:javascript
复制
# tcp bind ip
canal.ip =
# register ip to zookeeper
canal.register.ip =
canal.port = 11111 
canal.metrics.pull.port = 11112
# canal instance user/passwd
# canal.user = canal
# canal.passwd = E3619321C1A937C46A0D8BD1DAC39F93B27D4458

# canal admin config
#canal.admin.manager = 127.0.0.1:8089   默认访问地址
canal.admin.port = 11110 端口
canal.admin.user = admin 默认访问用户名
canal.admin.passwd = 4ACFE3202A5FF5CF467898FC58AAB1D615029441 默认密码 123456
# admin auto register
#canal.admin.register.auto = true
#canal.admin.register.cluster =
#canal.admin.register.name =

4.2 canal_manager数据库构建

canal集群管理站点运行依赖数据库,所以需要新建一个管理数据库,数据库表创建语句位于canal.admin-1.1.6\conf\canal_manager.sql

4.3 编辑application.yml

代码语言:javascript
复制
server:
  port: 8089
spring:
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8

spring.datasource:
  address: canal_manager数据库地址
  database: canal_manager
  username: 数据库访问用户名
  password:数据库访问密码

标黄处需要修改.

5、分别启动canal和canal-admin   启动文件位于bin文件夹下的start.bat

6、重置Canal消费position

修改\conf\example 下的meta.dat,如下:

代码语言:javascript
复制
{
  "clientDatas": [
    {
      "clientIdentity": {
        "clientId": 666,
        "destination": "example",
        "filter": "quzhou_baseasset.dh_log"
      },
      "cursor": {
        "identity": {
          "slaveId": -1,
          "sourceAddress": {
            "address": "102.2.12.3",
            "port": 3306
          }
        },
        "postion": {
          "gtid": "",
          "included": false,
          "journalName": "binlog.000078",
          "position": 380084023,
          "serverId": 1,
          "timestamp": 1661807567000
        }
      }
    }
  ],
  "destination": "example"
}

修改position节点下的timestamp或者journalName并指定position.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档