Canal安装配置(消息队列类型:RabbitMQ)

1.Mysql配置

canal 支持源端 MySQL 版本包括 5.1.x , 5.5.x , 5.6.x , 5.7.x , 8.0.x

1.1.查看mysql binlog是否开启:

SHOW VARIABLES LIKE 'log_bin'

 ON标识开启,如果mysql没有开启,需要配置MySQL配置文件中的配置(修改后重启mysql):

 binlog-format模式:

ROW模式除了记录sql语句之外,还会记录每个字段的变化情况,能够清楚的记录每行数据的变化历史,但会占用较多的空间。
STATEMENT模式只记录了sql语句,但是没有记上下文信息,在迸行数据恢复的时候可能会导致数据的丢矢情况;
MIX模式比较灵活的记录,理论上说当遇到了表结构变更的时候就会记录为statement模式。当遇到了数据更新或者删除情况下就会变为row模式;

 

1.2.授权 canal 链接 MySQL 账号具有作为 MySQL slave 的权限, 如果已有账户可直接 grant:

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

 

2.下载安装Canal

2.1.下载地址:https://github.com/alibaba/canal/releases/download/canal-1.1.5/canal.deployer-1.1.5.tar.gz

2.2.安装:

yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
mkdir /opt/canal
tar -zxvf canal.deployer-1.1.5.tar.gz -C /opt/canal

2.3.配置:

#配置Mysql信息配置文件
vi /opt/canal/conf/example/instance.properties

canal.mq.topic(mq_user)为RabbitMQ一个队列的Routing key

 

#配置RabbitMQ:
vi /opt/canal/conf/canal.properties

 

rabbitmq.exchange需要手动在RabbitMQ里面配置一个交换机或者已存在的交换机

 

3.启动

/opt/canal/bin/startup.sh

查看server日志:

cat /opt/canal/logs/canal/canal.log

查看 instance 的日志:

cat /opt/canal/logs/example/example.log

 

posted @ 2022-11-14 13:50  Mr丿Luo  阅读(905)  评论(0)    收藏  举报