Canal注意点

  • 前言

在上文Canal大做战基本已经实现了数据库实时根据binlog同步到ES的增删改。可是若要放到生产中,基本配置显然是不够的。接下去我就平时遇到的点记录下来!mysql

  • 重点sql

    1.canal服务重启或者新部署,以前未进行同步的数据该怎么处理?

这个状况要分两种,第一种是以前的数据没有binlog,那么这个只能本身经过代码来进行初始化的同步,第二种是有binlog的。第二种比较好操做,只要指定下canal server起来的时候读取的binlog便可,以下图:数据库

canal.instance.master.journal.name 通常在/var/lib/mysql路径下,能够本身决定从哪一个binlog开始。.net

canal.instance.master.position 能够在mysql下经过show master status in 'xxx'(binlog名) limit 0, 10指令来获取你须要的position;日志

这个时候这里有个坑,就是和instance.properties平级的目录下有一个meta.dat文件中记录了code

meta.dat文件中记录了canal服务取binlog的信息。若是不删掉,或者修改,那么就算在instance.properties改了也是不起效果的。server

最后发现canal服务启动的时候打的日志就能够知道成功啦!blog

相关文章
相关标签/搜索