MySQL配置
开启binlog日志功能
[mysqld]
log-bin=mysql-bin # 开启 binlog
binlog-format=ROW # 选择 ROW 模式
server_id=1 # 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复
创建canal数据库用户
#创建canal用户名及密码
CREATE USER canal IDENTIFIED BY 'canal';
#权限
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
FLUSH PRIVILEGES;
安装
下载1.1.4版本。
https://github.com/alibaba/canal/releases/download/canal-1.1.4/canal.deployer-1.1.4.tar.gz
3.2 配置文件修改
Canal服务器端口号会占用:11110、11111、11112
扩展:这里的canal.destinations = example可以设置多个,比如example1,example2, 则需要创建对应的两个文件夹,并且每个文件夹下都有一个instance.properties文件。
主要查看和修改以下两个文件:
vim canal/conf/canal.properties
##文件不用修改
##参考 canal.destinations = example1,example2
canal.instance.mysql.slaveId = 2 可以是任一值,不要与主master不同就行。
vim canal/conf/example/instance.properties
#两处修改
##之前配置的MySQL serverId = 1,这里伪装从节点
canal.instance.mysql.slaveId = 2
##集群主机数据库地址,本机数据库的话,不用改变
canal.instance.master.address=127.0.0.1:3306
这里canal是用的上面创建的帐号密码
address是上面mysql的ip与端口
启动运行,并查看相关日志
cd export/server/canal/bin
./startup.sh
# 查看日志
cat canal/logs/example/example.log
重启注意事项
先要停掉服务。用./stop.sh
然后再要去删除/canal/conf/example中的h2.mv.db meda.dat ,然后再启动./startup.sh