Canal的入门操作记录

文章目录

  • 1.主从数据库同步原理
  • 2.canal使用步骤
    • 2.1 开启binlog
    • 2.2 配置canal
      • canal.properties
      • instance.properties
      • 区别
  • 3.创建Canal用户
  • 4.取信息
  • 5.SpringBoot整合

canal其实就是假装自己是从数据库,来监听主数据库的binlog得到数据的变化信息

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

1.主从数据库同步原理

在这里插入图片描述

2.canal使用步骤

2.1 开启binlog

[mysqld]
log-bin=mysql-bin # 开启 binlog
binlog-format=ROW # 选择 ROW 模式
server_id=1# 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复

2.2 配置canal

canal.properties

  1. canal.ip:Canal Server所在机器的IP地址。
  2. canal.port:Canal Server监听的端口号。
  3. canal.destinations:指定需要同步的数据库实例名称,可以配置多个,以逗号分隔。
  4. canal.instance.master.address:MySQL主库的地址。
  5. canal.instance.master.journal.name:MySQL主库的binlog文件名。
  6. canal.instance.dbUsername:MySQL连接的用户名。
  7. canal.instance.dbPassword:MySQL连接的密码。

instance.properties

  1. canal.instance.mysql.slaveId:MySQL 从库的ID,用于标识不同的从库。
  2. canal.instance.master.address:MySQL 主库的地址
  3. canal.serverMode = tcp Canal 服务的模式,还有xxxMQ形式。

区别

  1. canal.properties:通常包含了全局性的配置项,适用于整个 Canal 服务实例。这些配置项会影响到 Canal 服务的整体行为,比如监听端口、IP 地址等。

  2. instance.properties:包含了特定数据库实例的配置信息,主要用于配置与该数据库实例相关的参数,如主从库地址、用户名密码、binlog 文件位置等。这些配置项是针对具体的数据库实例进行设置的,用于指定数据同步的源头。

3.创建Canal用户

CREATE USER canal IDENTIFIED BY 'canal';  
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
FLUSH PRIVILEGES;

4.取信息

在这里插入图片描述

5.SpringBoot整合

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浪潮信息InManage升级发布 三大功能释放数据中心运维管理压力

近日,浪潮信息官网开放了数据中心管理平台InManage全新版本的开放体验渠道,升级后的InManage拥有更强大的功能体验,可以有效解决大模型等AIGC应用对于数据中心的运维管理压力,通过全新功能的加持,浪潮信息将让数据中心…

docker安装和使用kafka

1. 启动zookeeper Kafka依赖zookeeper, 首先安装zookeeper -p:设置映射端口(默认2181) docker run --name zookeeper \--network app-tier \-e ALLOW_ANONYMOUS_LOGINyes \--restartalways \-d bitnami/zookeeper:latest2. 启动kafka docker…

C#上位机与欧姆龙PLC的通信13----【又爆肝】上位机应用开发(云端版)

1、概念背景 随着物联网技术的快速发展,工业互联网应运而生。工业互联网云平台作为连接智能制造和智慧工厂的重要技术手段,为制造业提供了更高效、更安全、更便捷的生产模式。工业互联网是指将互联网和物联网技术应用于工业生产和制造过程中,…

软考73-上午题-【面向对象技术2-UML】-UML中的图4

一、构件图(组件图) 1-1、构件图的定义 展现了,一组构件之间的组织和依赖。 构件图专注于系统的静态实现图。 构件图与类图相关,通常把构件映射为一个、多个类、接口、协作。 【回顾】: 类图展示了一组对象、接口、…

Vue中的组件:构建现代Web应用的基石

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

07 数据结构之图

# Makefile CCgcc CFLAGS -g -Wall SRCStest.c graph.c link_queue.c OBJS$(SRCS:.c.o) #variable replace APPtestall:$(OBJS) #指定一个目标, 不然默认目标不会检查依赖文件的时间戳$(CC) $(SRCS) -o $(APP) .PH…

怎么写品牌方流量打造抖音运营规划方案

【干货资料持续更新,以防走丢】 怎么写品牌方流量打造抖音运营规划方案 部分资料预览 资料部分是网络整理,仅供学习参考。 抖音运营资料合集(完整资料包含以下内容) 目录 Step 1: 人货沟通策略 人群定位与细分 1. 从品牌及产品…

修改MonkeyDev默认配置适配Xcode15

上一篇文章介绍了升级Xcode15后,适配MonkeyDev的一些操作,具体操作可以查看:Xcode 15 适配 MonkeyDev。 但是每次新建项目都要去修改那些配置,浪费时间和精力,这篇文章主要介绍如何修改MonkeyDev的默认配置&#xff0…

AI写真,太火了

昨天晚上,AI大佬吴东子直播讲解了AI写真项目,说21点破局星球会准时放出预约链接,结果21点星球直接崩溃了,只能说这个项目太火爆了 经过星球授权,这里把整个项目的SOP截取一部分给到大家,完整的SOP太长了&am…

gradle下载太慢者超时!国内镜像可以直接下载

# 解决Gradle下载过慢问题的有效方式:使用国内镜像站点 在开发过程中,我们经常会遇到Gradle下载速度缓慢或超时的问题。作为一个强大而流行的构建工具,Gradle是许多项目中必不可少的一部分。然而,由于官方下载地址可能受网络限制…

【工具】Git的介绍与安装

目录 前言 1W:什么是Git? 2W:为什么使用Git? 3W:如何使用Git? Git的安装步骤 测试 3.1 桌面空白部分鼠标右击 3.2 选择 Open Git Bash here 3.3 输入 git -v 命令查看版本 Git区域分布 Git的工作…

javase day02笔记

第二天课堂笔记 源文件的组成部分★★ 源文件外部结构 class 类名{}main方法 public static void main(String [] args){}main方法可有可无 没有main的情况,编译成功,运行失败,没有程序入口 多个main情况,编译报错,…