博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql 开源~canal维护相关问题
阅读量:6341 次
发布时间:2019-06-22

本文共 823 字,大约阅读时间需要 2 分钟。

一 简介:咱们来讨论下canal的一些技巧

二 场景

      场景1 canal过滤指定库后,后端java调用读取相关数据时候出现大量的空事务,为何会出现空事务呢,空事务是由于配置了指定的过滤规则,导致了其他库的事务被过滤掉,但是存在大量的begin commit,不利于分析

      解决方案 :1 canal的核心配置为  canal.instance.global.spring.xml = classpath:spring/file-instance.xml

                       2 修改 file-instance 增加属性

                       <bean id="eventSink" class="com.alibaba.otter.canal.sink.entry.EntryEventSink">

                       <property name="eventStore" ref="eventStore" />

                       <property name="filterEmtryTransactionEntry" value="false"/>//新添加的属性
                      </bean>

                    3 重启服务

                    4 研发进行再次观察

    场景2   在多canal环境下的同步信息同步问题

                场景问题 当一个canal挂掉后,另一个canal是无法应用元数据提供服务的

               解决方案: 将canal设置元数据保留在ZK上,这样在另一个canal提供服务的时候可读取最新点进行消费

              canal配置文件配置         

             canal.zkServers=zk地址

            canal.instance.global.spring.xml = classpath:spring/default-instance.xml

    场景3  利用pt-osc针对大表进行ddl操作,导致canal同步报错

     解决方案  手动创建new新表,然后canal就会通过,再手动删除new表即可

                    

转载于:https://www.cnblogs.com/danhuangpai/p/8028167.html

你可能感兴趣的文章
限制容器对CPU的使用 - 每天5分钟玩转 Docker 容器技术(28)
查看>>
jquery 实现的一个 随机云标签网页背景
查看>>
RPC
查看>>
android广播事件处理broadcast receive
查看>>
在eclipse 里面 修改tomcat的配置--Server Locations
查看>>
网站 mvc url 路径 设置 为 *.html 的原因
查看>>
mybatis 开启使用 默认的 二级缓存
查看>>
docker 容器 创建和 使用
查看>>
SQLITE使用指南
查看>>
我的友情链接
查看>>
Red Hat7版本本地仓库yum源的配置
查看>>
Linux学习-环境变量
查看>>
用Maven部署war包到远程Tomcat服务器
查看>>
android字体大小的设置
查看>>
2015.06.04 工作任务与心得
查看>>
icinga2使用587端口发邮件
查看>>
hpasmcli查看HP服务器内存状态
查看>>
极客工具
查看>>
【14】Python100例基础练习(1)
查看>>
boost bind使用指南
查看>>