Canal 使用入門 - 服務端

Canal是阿里提供的一個針對MySQL數據庫的增量日誌解析,提供增量數據訂閱和消費的框架(組件)。mysql

1.配置MySQL的配置文件(my.ini),增長以下配置:spring

[mysqld]
log-bin=mysql-bin #開啓日誌監控
binlog-format=ROW #監控模式爲ROW
server_id=1 #配置mysql replaction須要定義,不能和canal的slaveId重複

2.鏈接到數據庫,執行以下語句:sql

[mysqld]
CREATE USER canal IDENTIFIED BY 'canal';  
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%';
-- GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' ;
FLUSH PRIVILEGES;

備註:Canal的原理是模擬本身爲MySQL Slave,因此這裏必定須要作爲MySQL Slave的相關權限。3.配置Canal的配置文件(conf/example/instance.properties),增長以下配置:數據庫

#數據庫配置
canal.instance.master.address = 127.0.0.1:3306
canal.instance.master.journal.name =
canal.instance.master.position =
canal.instance.master.timestamp =

#主數據庫
canal.instance.dbUsername = canal #賬號
canal.instance.dbPassword = canal #密碼
canal.instance.defaultDatabaseName = #監聽的數據庫名稱
canal.instance.connectionCharset = UTF-8 #字符集

#備份數據庫(能夠不配置)
#canal.instance.standby.address =
#canal.instance.standby.journal.name =
#canal.instance.standby.position =
#canal.instance.standby.timestamp =

4.執行啓動文件(bin/startup.bat 或者 bin/startup.sh)。bash

5.檢查日誌:
logs/canal/canal.log框架

com.alibaba.otter.canal.deployer.CanalLauncher - ## start the canal server.
com.alibaba.otter.canal.deployer.CanalController - ## start the canal server[127.0.0.1:11111]
com.alibaba.otter.canal.deployer.CanalLauncher - ## the canal server is running now ......

logs/example/example.log日誌

c.a.o.c.i.spring.support.PropertyPlaceholderConfigurer - Loading properties file from class path resource [canal.properties]
c.a.o.c.i.spring.support.PropertyPlaceholderConfigurer - Loading properties file from class path resource [example/instance.properties]
c.a.otter.canal.instance.spring.CanalInstanceWithSpring - start CannalInstance for 1-example 
c.a.otter.canal.instance.spring.CanalInstanceWithSpring - start successful....
相關文章
相關標籤/搜索