1.拉取canal
sudo docker pull canal/canal-server:v1.1.4
2.启动cananl
//根据需要映射端口 sudo docker run -it --name canal -p 11111:11111 -p 8000:8000 -p 2222:2222 -p 1111:1111 -p 11112:11112 -p 11110:11110 -d canal/canal-server:v1.1.4
3.修改配置文件
//进入容器内 sudo docker exec -it canal /bin/bash cd canal-server/conf/ //如果不需要改为mq监听则忽略此步骤 vi canal.properties //canal.properties文件内 配置为rabbitmq的方式 这里省略了mq的配置 # tcp, kafka, rocketMQ, rabbitMQ canal.serverMode = rabbitMQ :wq cd example vi instance.properties //instance文件内 canal.instance.mysql.slaveId=123 //从库id 不与主库相同即可 canal.instance.master.address=数据库ip:端口 canal.instance.filter.regex=数据库\表名 // .*\..*表示全部库下的全部表canal.instance.dbUsername=用户名 canal.instance.dbPassword=密码 canal.instance.connectionCharset = UTF-8
4.重启服务
./home/admin/canal-server/bin/restart.sh cd /home/admin/canal-server/logs/canal tailf canal.log //出现 the canal server is running now ...... 则启动成功 cd /home/admin/canal-server/logs/example tailf example.log //出现 start successful.... 则启动成功
5.修改数据库,查看mq是否推送成功



