为了实现 实时同步数据,在mac环境搭建了canal,mysql,kafka的一套流程

使用canal加mysql加kafka的方式传递数据

mysql 数据源头

canal模仿slave冲mysql取数据。。是一个管道

kafka 将canal获取的数据放入kafka 。然后消费(程序获取kafka的队列。消费数据)

1.mysql安装

这个就不详述了。。不要安装最新版的mysql。本人亲测8.0版本和canal不一定能很好的兼容

所以。。安装了mysql5.7

安装命令(这样安装 安装的是8.0版本)

brew install mysql

2.java安装

不管是canal还是kafka都是需要java环境的。。

也不能用最新版的java,推荐使用java8也就是jdk8

最好是从官网oracle下载

安装方法:

https://blog.csdn.net/oumuv/article/details/84064169

3.canal安装

在装calal之前 确保mysql 及 java8 环境安装好了

下载地址: https://github.com/alibaba/canal/releases

下载 canal.deployer-1.1.4.tar.gz

在家目录下面新建一个canal目录.直接解压就行

官方文件已经编译好了,不需再编译

需要添加账户(canal@%及canal@local)

在canal/bin目录下有几个脚本文件,startup.sh 启动服务用的,stop.sh 停止服务用的

在canal/logs目录下放的是日志文件。

在canal/conf目录下放的是配置文件。

实例配置文件

canal/conf/example/instance.properties

实例的配置文件。。决定了 你连接哪个实例的数据库 可以精确到表

instance.properties中比较重要的参数

#实例

canal.instance.master.address = 127.0.0.1:3306

#db

canal.instance.dbUsername = canal

canal.instance.dbPassword = canal

canal.instance.defaultDatabaseName =test

canal.instance.connectionCharset = UTF-8

#table

# table regex

canal.instance.filter.regex = test.ttt

#mq topic

canal.mq.topic=test12345

上面这样配置 就代表了。。通过canal连接127.0.0.1中的test库的ttt表,放到一个叫做test12345的topic里面

验证canal是否和mysql连接 只需要在mysql的进程里面查看是否有一个复制连接(因为canal就是模仿了一个slave)

还有一个全局的文件

表示了需要连接的kafka zookeeper等

canal/conf/canal.properties

列举canal连接kafka的重要参数

canal.id= 1#如果有多个canal 这个值和集群中的canal不能冲突

canal.ip=172.17.61.113#canal的ip

canal.port= 11111

canal.zkServers=172.17.61.113:2181#zookeeper的ip:port

canal.serverMode = kafka

canal.destinations = example

#mq

canal.mq.servers = 172.17.61.113:9092#kafka的ip:port

上面有些关于kafka的参数 是 需要kafka安装好之后才能陪得(因为已经装好了 所以先列举出来)

4.kafka安装

kafka安装时需要zookeeper的。。

但是一般zookeeper会集成在kafka里面 所以不需要特别单独安装(也可以单独安装)

mac环境安装命令如下

brew install kafka

一直等安装完成就行

运行kafka是需要依赖于zookeeper的,所以安装kafka的时候也会包含zookeeper。

kafka的安装目录:/usr/local/Cellar/kafka/2.0.0/bin

kafka的配置文件目录:/usr/local/Cellar/kafka/2.0.0/bin

kafka服务的配置文件:/usr/local/etc/kafka/server.properties

zookeeper配置文件: /usr/local/etc/kafka/zookeeper.properties

# server.properties中的重要配置

需要修改的参数listeners=PLAINTEXT://172.17.61.113:9092advertised.listeners=PLAINTEXT://172.17.61.113:9092

zookeeper 配置文件我在安装的时候 没有做任何修改

然后 通过上面配置canal.properties 就连接上kafka

kafka的基本命令

首先,启动zookeeper:

zookeeper-server- start /usr/ local /etc/kafka/zookeeper.properties

然后,启动kafka

kafka- server -start /usr/local/etc/kafka/ server .properties

创建一个“使用单个分区”、“只有一个副本”、名为“test”的主题的topic

kafka-topics

--create

--zookeeper

localhost

:2181

--replication-factor 1

--partitions 1

--topic

test

(创建topic,这个topic。我们在canal中已经有了配置)

查看创建的topic,运行list topic命令:

kafka-topics --list --zookeeper 172.17.61.113:2181

生产消息

kafka-console-producer --broker-list 172.17.61.113:9092 --topic test

(消息数据由canal自动发送。所以这里的命令我们只有明白就行)

消费消息(这个地方就可以最后来查看mysql+canal+kafka是否已经联动起来了)

kafka-console-consumer --bootstrap-server 172.17.61.113:9092 --topic

test12345 --from-beginning

我在mysql里面的test库的ttt表里加了一条记录

然后反应在kafka就是如下结果

{"data":[{"id":"13","var":"ded"}],"database":"test","es":1575448571000,"id":8,"isDdl":false,"mysqlType":{"id":"int(11)","var":"varchar(5)"},"old":null,"pkNames":["id"],"sql":"","sqlType":{"id":4,"var":12},"table":"ttt","ts":1575448571758,"type":"INSERT"}

这就表示整个mysql+canal+kafka已经成功了

kafka mysql安装与配置_Mac环境canal+mysql+kafka的安装及使用相关推荐

  1. Linux下安装、配置PHP环境

    Linux下安装.启动MySQL :http://blog.csdn.net/wy3552128/article/details/8143686 Linux下安装.配置.启动Apache:http:/ ...

  2. mysql免安装版配置百度_mysql -5.7.10 免安装版配置

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 MySQL-5.7.10免安装版配置方法 1. 下载MySQL Community Server 5.7.10 解压MySQL压缩包 将以下载的MySQL ...

  3. android studio cmake opencv_Mac下安装及配置OpenCV环境(Xcode)

    Mac下安装及配置OpenCV环境(Xcode) OpenCV (Open Source Computer Vision Library) OpenCV是Intel开源计算机视觉库.它由一系列 C 函 ...

  4. Mac M1系统 miniconda安装、配置conda环境,及在conda环境中安装激活QIIME2

    Mac M1系统 miniconda安装.配置conda环境,及在conda环境中安装激活QIIME2 1.适配版本的miniconda软件安装包下载(windows, MAC, LINUX) Min ...

  5. VsCode安装和配置C++环境详细全流程

    目录 一.下载安装VsCode 1.下载VsCode 2.安装VsCode 3.下载安装中文插件(可选择性跳过) 二.MinGW编译器的下载和配置 1.下载MinGW 2.配置环境变量 3.检查环境变 ...

  6. 安装和配置java环境

    这里仅仅是记下,安装和配置Java环境的步骤,以及一些特殊情况说明.这里说的特殊情况是指,一些和大多数说明情况不一致的现象.比如,按理来说不安装和配置Java环境,eclipse无法运行." ...

  7. 安装及配置Maven环境变量

    安装及配置Maven环境变量 需要电脑中已经有Java环境 在控制台中输入:echo %JAVA_HOME%看是否能显示java home的路径信息: 在控制条输入:java -version 看是否 ...

  8. ActiveMQ的安装和启动 安装JAVA配置JAVA环境 下载ActiveMQ 解压压缩包 tar zxvf activemq-x.x.x-bin.tar.gz 至此,linux下Activ

    ActiveMQ的安装和启动 安装JAVA配置JAVA环境 下载ActiveMQ 解压压缩包  tar zxvf activemq-x.x.x-bin.tar.gz 至此,linux下ActiveMQ ...

  9. ROS教程1:安装和配置ROS环境

    安装和配置ROS环境 1 安装ROS 1.1 ROS Installation 1.2 是否安装成功 2 创建ROS工作空间并编译 2.1 Create catkin 2.2 catkin 是否配置正 ...

最新文章

  1. 利用MAVEN打包可运行jar包,包括依赖的第三方包
  2. 4.6 W 字总结!Java 11—Java 17特性详解
  3. clover configurator_枯木逢春,用Clover让老电脑从NVME SSD启动 再用叁年没问题
  4. 全局稳定性收敛平衡点为0吗_该平衡点处的小扰动稳定性判据是什?
  5. 航海学校高级课程任务讲义--海事课程
  6. javafx中的tree_JavaFX中的塔防(5)
  7. Linux 网络编程八(epoll应用--大并发处理)
  8. c语言中文刷屏,c语言二维数组刷屏练习.doc
  9. 5分钟 0元搭建个人独立博客网站(一)
  10. js实现的省市县三级联动的最新源码
  11. excel vba真正的动态数组实例-按需定义数组大小
  12. react form表单 input和textarea用法
  13. ACM_栈的压入、弹出序列
  14. 使用百度统计分析你的网站访问数据
  15. mysql commit慢_MySQL慢日志中COMMIT事件
  16. 模板方法模式-Template Method Pattern
  17. html浮动提示框,JavaScript浮动提示框Tooltip效果
  18. IDEA如何快速切换项目(快捷键切换)
  19. SSM搭建-Spring第一个Spring HelloWorld(2)
  20. 小程序的宿主环境-宿主环境简介

热门文章

  1. 用keil4 模拟仿真显示引脚波形输出分析的步骤
  2. 简易计算器里的小数点在程序中怎么表示_财管普通计算器(内有彬哥经验)
  3. 启明云端分享| 彩屏化的86控制面板(简称86盒)怎么选型硬件和对比
  4. push方法java_万字长文深入浅出谈Java数据类型系列之Stack
  5. plsqldev远程连接mysql_PLSQL Developer连接远程Oracle数据库
  6. databasemetadata获取表注释_宏基因组测序中短序列的注释
  7. php ibm mq,php linux IBM MQ安装以及php对接
  8. java 获取三天前时间_java 获取前几天时间
  9. ftl保存成html中文是乱码,解决freemarker生成静态页面时乱码问题
  10. format函数使用matlab,Matlab基本函数-format函数