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 #启动关闭的文件放在这里
conf #配置文件:主要关注canal.properties和example文件夹下面的instance.properties
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 #停止