搭建环境
- 操作系统: CentOS release 6.5 (Final)
- MySQL版本: 10.0.33-MariaDB-wsrep
- JDK版本:1.8(强力要求,否则会导致ES和canal-adapter无法启动)
- ElasticSearch版本:6.8.0
- canal版本: 1.1.3
- zookeeper
技术方案概览
- 开启MySQL的binary log日志记录
- 修改MySQL的binary log模式为
ROW
- canal-server充当MySQL集群的一个slave,获取master的binary log信息
- canal-server将拿到的binary log信息推送给canal-adapter
- canal-server和canal-adapter采用多节点部署的方式提高可用性
- canal-adapter将数据同步到es集群
MySQL配置
- 开启master的binary log记录功能,并且选择模式为ROW
log-bin=mysql-bin #添加这一行就ok
binlog-format=ROW #选择row模式
server_id=1 #配置mysql replaction需要定义,不能和canal的slaveId重复
- canal的原理是模拟自己为mysql slave,所以这里一定需要做为mysql slave的相关权限.
CREATE USER canal IDENTIFIED BY 'canal
还没有评论,来说两句吧...