zoukankan      html  css  js  c++  java
  • 数据同步canal服务端配置mysql多主

    canal服务端HA模式,本人并未使用过,为保证文章的完整性,从以下地址摘抄该部分内容,待以后验证及使用

    https://github.com/alibaba/canal/wiki/AdminGuide

    1、mysql机器准备

    准备两台mysql机器,配置为M-M模式,比如ip为:10.20.144.25:3306,10.20.144.29:3306

    1 [mysqld] 
    2 xxxxx ##其他正常master/slave配置
    3 log_slave_updates=true ##这个配置一定要打开

    2、canal instance配置

    1 # position info
    2 canal.instance.master.address = 10.20.144.25:3306
    3 canal.instance.master.journal.name = 
    4 canal.instance.master.position = 
    5 canal.instance.master.timestamp = 
    6 canal.instance.standby.address = 10.20.144.29:3306
    7 canal.instance.standby.journal.name =
    8 canal.instance.standby.position =
    9 canal.instance.standby.timestamp =

    detecing config

    1 canal.instance.detecting.enable = true ## 需要开启心跳检查
    2 canal.instance.detecting.sql = insert into retl.xdual values(1,now()) on duplicate key update x=now() ##心跳检查sql,也可以选择类似select 1的query语句
    3 canal.instance.detecting.interval.time = 3 ##心跳检查频率
    4 canal.instance.detecting.retry.threshold = 3  ## 心跳检查失败次数阀值,超过该阀值后会触发mysql链接切换,比如切换到standby机器上继续消费binlog
    5 canal.instance.detecting.heartbeatHaEnable = true ## 心跳检查超过失败次数阀值后,是否开启master/standby的切换.

    注意:

    a. 填写master/standby的地址和各自的起始binlog位置,目前配置只支持一个standby配置.

    b. 发生master/standby的切换的条件:(heartbeatHaEnable = true) && (失败次数>=retry.threshold).

    c. 多引入一个heartbeatHaEnable的考虑:开启心跳sql有时候是为client检测canal server是否正常工作,如果定时收到了心跳语句,那说明整个canal server工作正常

    3、启动 & 测试

    比如关闭一台机器的mysql , /etc/init.d/mysql stop 。在经历大概 interval.time * retry.threshold时间后,就会切换到standby机器上

  • 相关阅读:
    正则表达式获取字符串中html<input>标签指定value值
    [转]利用SqlBulkCopy快速大批量导入数据(SqlBulkCopy强大)
    ASP.NET数据库操作常用类
    response.redirect 和Server.Transfer有什么区别?
    数据驱动的依存句法分析方法简介(一)
    C#序列化问题
    MSSQL 标量函数
    事件和委托问题转
    Copy指定目录下的所有文件到新位置
    页面指定播放视频
  • 原文地址:https://www.cnblogs.com/wangzhisdu/p/8125973.html
Copyright © 2011-2022 走看看