Canal 使用

1.在服务器新建文件夹 mysql/data,新建文件 mysql/conf.d/my.cnf

[mysqld]
log_timestamps=SYSTEM
default-time-zone='+8:00'

server-id=1

log-bin=mysql-bin

binlog-do-db = mall # 要监听的库

binlog_format=ROW

其中 :

        

server-id :指定当前服务的id,必须指定,否则会报错

log-bin :设置binlog文件的存放地址和文件名,叫做mysql-bin,此处指定的目录前缀是mysql容器的数据存放目录,所以可以在挂载目录中看到相关的文件,命名格式是mysql-bin.000001开始慢慢叠加

binlog-do-db :指定针对哪个数据库记录binlog的events事件,此处记录mall库

如果在 MySQL 配置中没有显式地配置 binlog-do-db 参数,那么 MySQL 的二进制日志(binlog)将会记录所有数据库的变更操作。

binlog_format

binlog_format 是用于配置二进制日志(binlog)的格式。binlog 是 MySQL 中用于记录数据库的变更操作的日志文件。

        类型有:

1. STATEMENT:以 SQL 语句的形式记录数据库的变更操作

2. ROW:以行的形式记录数据库的变更操作

3. MIXED:混合模式

2.启动数据库

docker run --name mysql01 \
-p 3306:3306 \
-v /opt/mysql/conf.d:/etc/mysql/conf.d \
-v /opt/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0

我的阿里镜像:

sql:

registry.cn-beijing.aliyuncs.com/xxkapp/mysql:8.0
registry.cn-beijing.aliyuncs.com/xxkapp/canal-serverregistry.cn-beijing.aliyuncs.com/xxkapp/canal-server:v1.1.5

3 校验是否成功

show variables like 'log_%';

show variables like 'binlog_format';

show variables like 'server_id';

--查看所有日志
show binlog events;

--查看最新的日志
show master status

-- 查询指定的binlog日志
show binlog events in 'XTZJ-20221008CY-bin.000020'

--清空所有的 binlog 日志文件
reset master

4 安装canal

1.新建文件夹logs, 新建文件canal.properties instance.properties docker.compose.yml

2.启动容器:

docker-compose up -d

 其中重启        

        docker-compose down

3.查看结果

        

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值