canal监听mysql的增删改操作

canal监听mysql的增删改操作

1.安装mysql-5.7.24

(1)安装过程省略

(2)修改配置文件my.cnf, 开启mysql的binlog功能

# vim /etc/my.cnf

加入下面三行代码

#binlog数据中包含server_id,标识该数据是由那个server同步过来的
server-id = 1
#mysql向文件名前缀添加数字后缀来按顺序创建二进制日志文件如mysql-binlog.000006 
log-bin = mysql-bin
#选择基于行的日志记录方式
binlog_format = ROW

(3)重启mysql

# service mysql restart

(4)查看是否修改成功

#进入mysql命令行执行show variables like log_%;
执行show variables like binlog_format;

2.安装canal

(1) 下载canal的压缩包并解压:

官网https://github.com/alibaba/canal/releases 下载 canal.deployer-1.1.4.tar.gz

mkdir /usr/local/canal 下载好的压缩包在上面的目录中解压 tar –zxvf canal.deployer-1.1.4.tar.gz

(2)修改canal的相关配置

解压后的canal有4个文件夹分别为bin,conf,lib,logs

bin #启动关闭的文件放在这里 lib #运行所需的资源文件 logs #日志记录,下面又有两个文件夹canal和example,各自下面有一个日志文件,canal.log和example.log,当你的canal不起作用时,主要看这两个日志文件的错误信息。

在解压好的文件夹中修改两个配置文件(4个地方就行)

修改canal.properties #这个id不能和mysql后面加入的那个id重复 canal.id= 1001 canal.ip= canal.port=11111 canal.metrics.pull.port=11112 修改instance.properties #mysql serverId , v1.0.26+ will autoGen #canal.instance.mysql.slaveId=0 #enable gtid use true/false canal.instance.gtidon=false #position info #此处修改为自己的数据连接地址 canal.instance.master.address=192.168.122.1:3306 canal.instance.master.journal.name= canal.instance.master.position= canal.instance.master.timestamp= canal.instance.master.gtid= #rds oss binlog canal.instance.rds.accesskey= canal.instance.rds.secretkey= canal.instance.rds.instanceId= #table meta tsdb info canal.instance.tsdb.enable=true #canal.instance.tsdb.url=jdbc:mysql://127.0.0.1:3306/canal_tsdb #canal.instance.tsdb.dbUsername=canal #canal.instance.tsdb.dbPassword=canal #canal.instance.standby.address = #canal.instance.standby.journal.name = #canal.instance.standby.position = #canal.instance.standby.timestamp = #canal.instance.standby.gtid= #username/password #自己的数据库账号密码 canal.instance.dbUsername=root canal.instance.dbPassword=1234 canal.instance.connectionCharset=UTF-8 #table regex canal.instance.filter.regex=.*\..* #table black regex canal.instance.filter.black.regex=

(3) 启动

在bin文件夹中输入命令

# ./startup.sh
# ./stop.sh	#停止
经验分享 程序员 微信小程序 职场和发展