(1)开启MySQL的binlog功能,并配置binlog模式为row。 在my.cnf 加入如下:
[mysqld] log-bin=mysql-bin #添加这一行就ok binlog-format=ROW #选择row模式 server_id=1 #配置mysql replaction需要定义,不能和canal的slaveId重复(2)在mysql中 配置canal数据库管理用户,配置相应权限(repication权限)
CREATE USER canal IDENTIFIED BY 'canal'; GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%'; -- GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' ; FLUSH PRIVILEGES;(3)下载canal https://github.com/alibaba/canal/releases ,解压到相应文件夹
tar -zxvf canal.deployer-1.0.24.tar.gz canal修改配置 instance.properties
vim canal/conf/example/instance.properties ################################################# ## mysql serverId canal.instance.mysql.slaveId = 1234 # position info,改成自己的数据库地址端口 canal.instance.master.address = 127.0.0.1:3306 canal.instance.master.journal.name = canal.instance.master.position = canal.instance.master.timestamp = #canal.instance.standby.address = #canal.instance.standby.journal.name = #canal.instance.standby.position = #canal.instance.standby.timestamp = # username/password,改成自己的数据库帐号密码和数据库名 canal.instance.dbUsername = canal canal.instance.dbPassword = canal canal.instance.defaultDatabaseName = canal_test canal.instance.connectionCharset = UTF-8 # table regex canal.instance.filter.regex = .*\\..* #################################################然后cd到bin目录 启动和停止canal-server 启动
sh startup.sh停止
sh stop.sh验证启动状态,查看log文件
vim canal/log/canal/canal.log 2017-07-11 16:17:38.224 [main] INFO com.alibaba.otter.canal.deployer.CanalLauncher - ## start the canal server. 2017-07-11 16:17:38.273 [main] INFO com.alibaba.otter.canal.deployer.CanalController - ## start the canal server[172.19.0.1:11111] 2017-07-11 16:17:38.569 [main] INFO com.alibaba.otter.canal.deployer.CanalLauncher - ## the canal server is running now ......上述日志信息显示启动canal成功
