mysql canal 安装测试_Canal 测试

Canal

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

工作原理

MySQL主备复制原理

MySQL master 将数据变更写入二进制日志( binary log, 其中记录叫做二进制日志事件binary log events,可以通过 show binlog events 进行查看)

MySQL slave 将 master 的 binary log events 拷贝到它的中继日志(relay log)

MySQL slave 重放 relay log 中事件,将数据变更反映它自己的数据

canal 工作原理

canal 模拟 MySQL slave 的交互协议,伪装自己为 MySQL slave ,向 MySQL master 发送dump 协议

MySQL master 收到 dump 请求,开始推送 binary log 给 slave (即 canal )

canal 解析 binary log 对象(原始为 byte 流)

Canal Admin

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

Canal java 客户端

使用

Mysql 开启binlog日志

先开启 Binlog 写入功能,配置 binlog-format 为 ROW 模式,my.cnf 中配置如下

# 唯一标识 不要和 canal 的 slaveId 重复

server-id=1

# binlog文件名

log-bin=mysql-binlog

# 选择 ROW 模式

binlog-format=ROW

# 要忽略的数据库

binlog-ignore-db=mysql

启动mysql后可以在data目录中看到新增的文件

mysql-binlog.000001

mysql-binlog.index

查看一下状态:

SHOW MASTER STATUS;

"File" "Position" "Binlog_Do_DB" "Binlog_Ignore_DB" "Executed_Gtid_Set"

"mysql-binlog.000001" "154" "" "mysql" ""

新建账号

授权 canal 链接 MySQL 账号具有作为 MySQL slave 的权限

CREATE USER canal IDENTIFIED BY 'canal';

GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';

FLUSH PRIVILEGES;

查看一下:

SELECT USER,HOST FROM mysql.user;

Canal 配置

解压缩下载的canal-deployer压缩包

conf/canal.properties

默认配置,注意:

# 服务端口配置

canal.port = 11111

# 客户端连接账号配置(目前未设置)

# canal.user = canal

# canal.passwd = E3619321C1A937C46A0D8BD1DAC39F93B27D4458

# 客户端连接端点名

canal.destinations = example

conf/example/instance.properties

默认配置,注意:

## canal伪装的slaveId(只要和已有的节点ID不冲突即可)

canal.instance.mysql.slaveId=99

# 数据库连接配置

canal.instance.master.address=127.0.0.1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值