mysql 第四十篇文章~canal+otter的初次尝试

一 简介: 今天咱们来聊聊 canal和otter的组合搭配吧
二 概念统计
    1. 基于Canal开源产品,获取数据库增量日志数据。

2. 典型管理系统架构,manager(web管理)+node(工作节点)

a. manager运行时推送同步配置到node节点

b. node节点将同步状态反馈到manager上

3. 基于zookeeper,解决分布式状态调度的,允许多node节点之间协同工作.

三 机器组成:

1 manager节点(最好自带数据库)  2 node节点   3 ZK集群 4 mysql数据库(2 台)

四  manager安装

1 下载sql文件并导入
      wget https://raw.github.com/alibaba/otter/master/manager/deployer/src/main/resources/sql/otter-manager-schema.sql
      source otter-manager-schema.sql
    2 下载安装包
     wget https://github.com/alibaba/otter/releases/download/v4.2.15/manager.deployer-4.2.15.tar.gz
     tar xzvf manager.deployer-4.2.15.tar.gz -C /usr/local/otter-manager
   3 修改配置文件otter.properties
     otter.zookeeper.cluster.default = zk地址:2181
     otter.domainName =本机IP地址
     otter.database.driver.url = jdbc:mysql://IP:3306/otter
     otter.database.driver.username = 用户名
     otter.database.driver.password = 密码 //otter管理节点需要使用数据库,这里设置的是连接这台数据库的用户名密码
  4 启动相应进程
     startup.sh
  5 manager启动测试
     访问地址 http://127.0.0.1:8080/login.htm,初始密码为:admin/admin

6 访问成功截图


  二 node 启动
    注意 必须安装manager,在web界面对node节点进行配置
       1 登录web界面进行node节点配置


          机器名称:可以随意定义,方便自己记忆即可
          机器ip:对应node节点将要部署的机器ip,如果有多ip时,可选择其中一个ip进行暴露. (此ip是整个集群通讯的入口,实际情况千万别使用127.0.0.1,否则多个机器的node节点会无法识别)
          机器端口:对应node节点将要部署时启动的数据通讯端口,建议值:2088
          下载端口:对应node节点将要部署时启动的数据下载端口,建议值:9090
          外部ip :对应node节点将要部署的机器ip,存在的一个外部ip,允许通讯的时候走公网处理。
          zookeeper集群:为提升通讯效率,不同机房的机器可选择就近的zookeeper集群.
  2 从节点服务器进行安装配置
        1 wget https://github.com/alibaba/otter/releases/download/v4.2.15/node.deployer-4.2.15.tar.gz
           tar xzvf node.deployer-4.2.15.tar.gz -C /usr/local/otter-node 
          wget http://repository.it4i.cz/mirrors/repoforge/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
          rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
           yum -y install aria2

2 修改配置文件

1 NID配置

              echo 1 > conf/nid (这里的NID是第一步配置生成的第一个ID)
          2 otter.properties配置修改
              otter.manager.address = IP:1099 正确的otter-manager地址
          3 启动node节点服务

3 查看状态
         

状态已启用代表正常,如果没有启用,请查看日至进行排查,可能端口被占用

请注意 otter+canal 只支持row格式下的binlog格式

至此,主从节点配置完成,今天先到这里吧

时间: 2024-08-30 08:51:58

mysql 第四十篇文章~canal+otter的初次尝试的相关文章

mysql 第四十五篇文章~初探MGR

一 简介 :MGR一直没有时间测试,今天咱们来初步了解搭建一下呗 二 环境: mysql5.7.20  单台机器 启动三实例 三  mysql 搭建: 1 建立相关目录+ mkdir -p /data/mysql/data_3306 mkdir -p /data/mysql/data_3307 mkdir -p /data/mysql/data_3308 2 脚本初始化 /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql

小刘同学的第四十篇博文

开通博客已经四十天了啊,时间真是快的有点不太真实,也可能是太过真实了...总之无论发生了什么事儿,生活还是要继续. 今天状态没想到比昨天更差了,特别是下午和晚上,基本上没做什么事了,哎,放寒假了还天天跑来理工大学做什么?如果是来自习的,那干嘛还帅微博.刷空间动态呢? 上午的时候稍微看了下Vue.js的相关内容,看文档好像没什么好看的,就听老师讲课的时候,讲了一些内容,具体也不是很用心的在看.不过还是把老师的笔记再手敲一遍吧,给大家看看. vue的概念: 模板引擎 通常这个概念出现在应用层(MVC

mysql 第三十九篇文章~canal的深度解读1

一 简介:经过一段时间的研究,对canal有了一些见解 二 配置文件: 1 canal.properties (系统根配置文件)     主要参数列表   canal.properties (系统根配置文件)   canal.destinations= example 当前server上部署的instance列表 默认为example 在canal.properties定义了canal.destinations后,需要在canal.conf.dir对应的目录下建立同名的文件 canal.auto

mysql 第四十四篇文章~谈谈最基本的规范

一 简介:今天咱们来谈谈研发规范 二 规范   1 表       1 选择合适的字符集和存储引擎 推荐innodb utf8mb4       2 表名称不要包含mysql关键字,符合命名规范       3 不建议采用外键       4 尽量不要采用分区表,采用分库分表是最优方案  2 列       1 每一列都要设置comment注释        2 每一列最好都设置为非NULL,设置默认值       3 varchar和char的选择 定长选择char 变长选择varchar ,

mysql 第二十篇文章~mycat 分片规则的初步讲解

一 简介:今天咱们来聊聊分片规则的初步理解 二 前沿:mycat的分片规则是十分丰富的,此外还可以根据java进行扩展 三 文件:rule.xml 四 具体分片规则: <tableRule name="rule1">  <tableRule name="rule2">  <tableRule name="sharding-by-intfile">  <tableRule name="auto-s

mongodb第十篇文章~探讨mongodb的集群

mongodb副本集扩展为机器分片分片集群构成描述1 replset (副本集,数存储分片的数据)2 mongo_config(集群配置中心,存储元数据 你可以理解成带各种配置的mycat) 3 mongos(API访问接口,路由不存储数据 ) 一 启动各项服务0 启动副本及服务/data/mongo/mongodb/bin/mongod --config /etc/mongodb_sh.conf 1 启动三个配置中心服务/data/mongo/mongodb/bin/mongod --conf

mysql 第三十一篇文章~jvm的知识与优化

一 简介: 今天咱们聊聊 jvm内存调优二 基础理论:   1 jvm 堆(heap)基本概念:       1 对于大多数应用来说,Java堆(Java Heap)是Java虚拟机所管理的内存中最大的一块.Java堆是被所有线程共享的一块内存区域,在虚拟机启动时创建.此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配内存.       2 Java堆是垃圾收集器管理的主要区域,因此很多时候也被称做"GC堆".如果从内存回收的角度看,由于现在收集器基本都是采用的分代收

第四十篇 Numpy.array的基本操作——向量及矩阵的运算

No.1. Numpy.array相较于Python原生List的性能优势 No.2. 将向量或矩阵中的每个元素 + 1 No.2. 将向量或矩阵中的所有元素 - 1 No.3. 将向量或矩阵中的所有元素 * 2 No.4. 将向量或矩阵中的所有元素 / 2 或 // 2 No.5. 幂运算 No.6. 取余 No.7. 取绝对值 No.8. 三角函数 No.9. 取e的x方 No.10. 取任意数的x方 No.11. 取以e为底x的对数 No.12. 取以任意数为底x的对数 No.13. 矩阵

第四十篇 re模块

re模块 import re 正则表达式,又称规则表达式.正则表达式通常被用来检索.替换那些符合某个模式(规则)的文本(也就是原字符串中有符合规则的就拿出来,没有就继续搜索) 元字符 s = 'I am king, I amam27 years old, I want to go to study' # 1. ^ 获取开头字符 res = re.findall('^I',s) print(res) # ['I'] # 2. $ 获取结尾字符 res = re.findall('study$',s