Canal监控MySQL数据到Kafka详细步骤(jdk+zookeeper+kafka+canal+mysql)

2023-05-16

目录

  • 一、前言
  • 二、环境准备
  • 三、安装JDK
  • 四、安装zookeeper
  • 五、安装Kafka
  • 六、安装MySQL
  • 七、安装canal服务端(canal监控mysql数据发送到kafka)
  • 八、测试是否可以监控到数据
  • 九、结语

一、前言

以下步骤是通过一台虚拟机搭建的单节点jdk+zookeeper+kafka+canal+mysql集群环境,搭建完成可通过canal监控mysql数据库数据发送到kafka。
mysql-canal-kafka

二、环境准备

环境:虚拟机 centos7
全程为root操作权限
由于是虚拟机我们这里直接关闭防火墙,如果是服务器建议只开放指定端口(注意有的需要配置安全组)
1、在虚拟机中打开终端查看ip

ifconfig

2、用xshell连接上虚拟机
3、关闭防火墙

systemctl stop firewalld # 关闭防火墙
补充:
systemctl status firewalld # 查看防火墙状态
systemctl start firewalld # 打开防火墙
systemctl restart firewalld # 重启防火墙

三、安装JDK

1、查看是否有默认安装的jdk

java -version

2、卸载默认安装的jdk

yum list installed | grep java # 查询已安装的jdk信息
yum -y remove 自带openjdk # 卸载

3、创建文件夹放我们的安装包以及安装位置

cd /
mkdir app
cd app
mkdir installationPackage #放安装包
cd ../
mkdir path # 安装位置

4、将我们用到的压缩包通过xftp上传到服务器的/app/installationPackage目录下
5、解压jdk到/app/path目录下

tar -zxvf /app/installationPackage/jdk-8u221-linux-x64.tar.gz -C /app/path

6、进入到/app/path目录下将jdk1.8.0_221文件夹更名为jdk

mv jdk1.8.0_221 ./jdk

7、配置环境变量

vim /etc/profile

按i进入到insert模式,在文件最下方输入

# java 环境变量
export JAVA_HOME=/app/path/jdk
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

8、让环境变量生效

source /etc/profile

9、测试jdk是否安装成功

java -version

四、安装zookeeper

1、把zookeeper的压缩包传到/app/installationPackage目录下
2、解压到/app/path目录下

tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz -C ../path/

3、进入到/app/path目录下将apache-zookeeper-3.5.9更名为zookeeper

cd /app/path
mv apache-zookeeper-3.5.9 /zookeeper

4、进入到/app/path/zookeeper/conf目录下,把zoo_sample.cfg 文件复制并重命名为 zoo.cfg 文件

cd /app/path/zookeeper/conf
cp zoo_sample.cfg zoo.cfg

5、修改zoo.cfg文件

vim zoo.cfg

修改dataDir

dataDir=/app/path/zookeeper/data
# 在文件最下方加如下内容
server.0=localhost:2888:3888

1、 dataDir:存储内存中数据库快照的位置,除非另有说明,否则指向数据库更新的事务日志。注意:应该谨慎的选择日志存放的位置,使用专用的日志存储设备能够大大提高系统的性能,如果将日志存储在比较繁忙的存储设备上,那么将会很大程度上影像系统性能。
2、server.A=B:C:D
  A:其中 A 是一个数字,表示这个是服务器的编号;
  B:是这个服务器的 ip 地址;
  C:Zookeeper服务器之间的通信端口;
  D:Leader选举的端口。
 我们需要修改的第一个是 dataDir ,在指定的位置处创建好目录。
 第二个需要新增的是 server.A=B:C:D 配置,其中 A 对应下面我们即将介绍的myid 文件。B是集群的各个IP地址,C:D 是端口配置。

6、在/app/path/zookeeper目录下创建data文件夹(zoo.cfg中指定的dataDir路径)

mkdir data

7、进入到dataDir指定的文件夹下(/app/path/zookeeper/data)

vim myid
# 按i进入insert模式并输入zoo.cfg中server的数字
0

myid是zk集群用来发现彼此的标识,必须创建,且不能相同

8、配置环境变量

vim /etc/profile

按i进入到insert模式,在文件最下方输入

# zookeeper环境变量
export ZK_HOME=/app/path/zookeeper
export PATH=$PATH:$ZK_HOME/bin

9、让环境变量生效

source /etc/profile

10、启动zookeeper

zkServer.sh start
补充:
zkServer.sh start # 启动
zkServer.sh stop # 停止
zkServer.sh restart # 重启
zkServer.sh status  # 查看节点状态

11、查看zookeeper是否启动成功

zkServer.sh status

单节点的会显示standalone,集群会显示leader或者flower

jps
#QuorumPeerMain 表示zookeeper在运行

五、安装Kafka

1、把kafka压缩包放到/app/installationPackage目录下
2、解压到/app/path目录下

tar -zxvf kafka_2.13-2.7.0.tgz -C ../path/

3、进入到/app/path目录下将kafka_2.13-2.7.0更名为kafka

cd /app/path
mv kafka_2.13-2.7.0/ kafka

4、修改配置文件 (server.properties) 注:按顺序来(从上到下找)

broker.id=0 # 对应zookeeper的myid
listeners=PLAINTEXT://localhost:9092
log.dirs=/app/path/kafka/data
log.retention.hours=1
log.cleanup.policy=delete
zookeeper.connect=localhost:2181

在内网部署kafka集群只需要用到listeners,内外网需要作区分时才需要advertised.listeners。
listeners:监听器,是为了告诉外部连接者要通过什么协议访问指定主机名和端口开放的kafka服务。
advertiesd.listeners:比listeners多了一个advertised,advertise表示宣称的、公布的,就是组监听器是Broker用于对外发布的。
advertised_listeners 是对外暴露的服务端口,真正建立连接用的是 listeners。

5、进入到并/app/path/kafka/bin/目录下修改kafka日志存储地址

vim kafka-run-class.sh

修改如下内容

LOG_DIR=/app/path/kafka/logs

6、进入到/app/path/kafka/config目录下配置kafka connect组件

vim connect-distributed.properties

修改如下内容

bootstrap.servers=localhost:9092
rest.port=8083
rest.advertised.port=8083
plugin.path=/app/path/kafka/connect # kafka connect插件路径

7、配置环境变量

vim /etc/profile

按i进入到insert模式,在文件最下方输入

#KAFKA环境变量
export KAFKA_HOME=/app/path/kafka
export PATH=$PATH:$KAFKA_HOME/bin

8、让环境变量生效

source /etc/profile

9、启动kafka

kafka-server-start.sh -daemon /app/path/kafka/config/server.properties

10、启动kafka connect

connect-distributed.sh -daemon /app/path/kafka/config/connect-distributed.properties

11、检查是否启动成功

jps
#kafka 表示kafka启动成功
#ConnectDistributed 表示kafka connect启动成功

12、创建生产者和消费者测试kafka
创建主题

kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 -topic 主题名称

创建生产者

kafka-console-producer.sh --broker-list localhost:9092 --topic 主题名称

创建消费者

kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic 主题名称

六、安装MySQL

1、卸载已有mysql

# 检查 MariaDB 是否安装
yum list installed | grep mariadb
# 卸载全部 MariaDB 相关
yum -y remove mariadb*
# 查看已经安装的服务
yum list installed | grep -i mysql   # -i 无论大小写
# 删除查出来的服务(去掉后缀)
yum -y remove myql名字 
# 查看残留的目录:
whereis mysql
# 删除相关文件:
rm –rf /usr/lib64/mysql
rm –rf /usr/my.cnf
rm -rf /var/lib/mysql
# 如果这个目录如果不删除,再重新安装之后,密码还是之前的密码,不会重新初始化!

2、把mysql压缩包放到/app/installationPackage目录下
3、将mysql压缩包解压到/usr/local目录下

tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar -C /usr/local

4、进入到/usr/local目录下并重命名mysql-5.7.26-linux-glibc2.12-x86_64

cd /usr/local
mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql

5、创建mysql用户组和用户

groupadd mysql
useradd -r -g mysql mysql

6、创建数据目录并赋予权限

mkdir -p  /data/mysql              #创建目录
chown mysql:mysql -R /data/mysql   #赋予权限

7、配置my.cnf

vim /etc/my.cnf

按i进入到insert模式,在文件中输入

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

8、进入/usr/local/mysql/bin/目录下,初始化数据库

cd /usr/local/mysql/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

9、查看密码

cat /data/mysql/mysql.err

10、将mysql.server放到/etc/init.d/mysql中,然后就可以使用此命令启动/关闭 mysql:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

11、启动mysql

service mysql start # 启动mysql
补充:
service mysql stop # 停止mysql
service mysql restart # 重启mysql

出现Starting MySAL… SUCCESS!表示安装成功

12、登录mysql

./mysql -u root -p   #bin目录下
# 输入上面拿到的初始密码

13、修改默认密码

SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;   # 刷新使其生效

14、开启远程访问

use mysql  #进入到mysql库中
update user set host = '%' where user = 'root';  # 使root能再任何host访问
FLUSH PRIVILEGES; # 刷新

15、建立软链接,不用到mysql的bin目录下执行mysql命令

ln -s  /usr/local/mysql/bin/mysql    /usr/bin

此时已经可以通过数据库工具来连接该数据库了

16、此时可以在数据库中新建一个database并在该database下新建一个表,作为我们一会儿要监控的表

七、安装canal服务端(canal监控mysql数据发送到kafka)

1、把canal压缩包放到/app/installationPackage目录下
2、进入到/app/path/目录下 创建canal_server文件夹

cd /app/path
mkdir canal_server

3、解压到/app/path/canal_server目录下

tar -zxvf canal.deployer-1.1.4.tar.gz -C ../path/canal_server

4、开启myql Binlog写入功能,配置 binlog-format 为 ROW 模式

vim /etc/my.cnf

按i进入到insert模式,在文件最下方输入

log-bin=mysql-bin # 开启 binlog
binlog-format=ROW # 选择 ROW 模式
server_id=1 # 配置 MySQL replaction 需要定义,不要和 canal 的 slaveId 重复

注意:针对阿里云 RDS for MySQL , 默认打开了 binlog , 并且账号默认具有 binlog dump 权限 , 不需要任何权限或者 binlog 设置,可以直接跳过这一步

5、授权 canal 链接 MySQL 账号具有作为 MySQL slave 的权限, 如果已有账户可直接 grant

CREATE USER canal IDENTIFIED BY 'canal';  
GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%'; #账号密码都为canal
-- GRANT ALL PRIVILEGES ON *.* TO 'canal'@'%' ;
FLUSH PRIVILEGES; # 刷新

这里建议可以重启一下mysql服务,以免改动未生效。

6、修改监控配置

vim /app/path/canal_server/conf/example/instance.properties

按i进入到insert模式,在文件最下方输入

canal.instance.master.address = localhost:3306 # 数据库地址
canal.instance.dbUsername = canal  # 数据库账号
canal.instance.dbPassword = canal  # 数据库密码
canal.instance.filter.regex = 数据库名.要监控的表名

配置里默认Kafka主题为example,可自行更改,如果使用默认主题,要记得再kafka中创建这个主题

7、修改kafka相关配置

vim /app/path/canal_server/conf/canal.properties

按i进入到insert模式,在文件最下方输入

canal.serverMode = kafka # 发送到kafka
canal.mq.servers = localhost:9092 # kafka集群地址

8、进入到/app/path/canal_server/bin目录下

sh ./startup.sh # 启动
sh ./stop.sh # 停止

八、测试是否可以监控到数据

1、我们前面已经mysql数据库中新建好数据库以及我们要中的表并且已经将其填写到了canal的instance.properties中

2、新建kafka主题

kafka-topics.sh --create --zookeeper 你的ip:2181 --replication-factor 3 --partitions 1 -topic 主题名称

3、创建kafka消费者

kafka-console-consumer.sh --bootstrap-server 你的ip:9092 --topic 主题名称

4、在我们监控的表中新增、修改、删除数据、修改表结构

5、我们的kafka消费者都会传来对应的数据

九、结语

如果上面你的kafka消费者能传来你对该表的增删改,那么恭喜你。你已经完成了以上环境的搭建,给自己鼓鼓掌吧。

由于我自己才学没多久,在搭建的过程中遇到好多问题,踩过好多坑,所以把搭建步骤尽可能详细地记录下来,当作自己学习的一个记录,也希望能够帮到有需要的人。
如果以上步骤中有什么问题或需要补充的话,也希望各位大佬不吝赐教。最后,祝大家工作顺利,心想事成!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Canal监控MySQL数据到Kafka详细步骤(jdk+zookeeper+kafka+canal+mysql) 的相关文章

  • 如何修改现有表以添加时区

    我有一个包含 500 多个表的大型应用程序 我必须将应用程序转换为时区感知 当前应用程序使用new java util Date GETDATE 与服务器的时区 即没有任何时区支持 我已将这项任务分为几个步骤 以便于开发 我确定的第一个步骤
  • MySQL:计算日期/时间之间的差异 - 仅在周一至周五“工作周”期间

    我需要计算开始日期 时间和结束日期 时间之间的差异 但是 我只想在 5 天的工作周内执行此操作 不包括周六 周日 做这个的最好方式是什么 我的想法是 从日期开始 我必须获取星期几 如果是工作日 那么我将添加到累加器中 如果不是 那么我不会添
  • 在mysql中的单个查询中更新多个表

    我有三个查询 我想要一个 这是我的查询 UPDATE tab1 SET a WHERE id 3 UPDATE tab2 SET b WHERE id 9 UPDATE tab3 SET c WHERE id 5 您可以尝试下面的代码 UP
  • 如何在mysql中选择具有相同值集的列?

    我的桌子是 patients pid name city disease did dname has disease did pid 我想列出具有相同疾病组的患者 pid 和 did 分别是患者和疾病表中的主键 并且是 has diseas
  • 从另一台计算机访问 MYSQL

    我想开发一个java桌面应用程序 我想在其中设置服务器 这意味着我在这里使用mysql db 该数据库将仅存储在一台电脑上 其余所有用户都可以访问该数据库 所以 我听说了mysql远程连接 其中尝试了一些事情 这些措施如下 我的电脑已连接w
  • 如何在 MySQL 中求和时间?

    正如您在图片中看到的 我有一份停机报告 显示了所选工厂在选定日期的停机时间 现在我想添加所有的值 Time Duration 列并将其显示在附近的单独显示中 TOTAL TIME DURATION 例如 在图像中 所选日期为 2015 年
  • covertJSONtoSQL 在 NiFi 中返回空值

    我正在设计一项工作 使用以下命令将数据从 MySQL 中的数据库转移到另一个数据库 MySQL 执行SQL处理器随后将Avro转换为Json then 将Json转换为SQL then PutSQL如下流程图所示 将JSON转换为SQL返回
  • 合并两个 MYSQL SELECT 查询[重复]

    这个问题在这里已经有答案了 可能的重复 如何将两个 Post Category 表 MYSQL SELECT 查询合并为一个 https stackoverflow com questions 12972130 how to combine
  • PHP MYSQL文件内容转义问题

    我正在尝试使用 php 将 pdf 文件上传到 mysql 数据库中 除了文件内容之外 一切都很好 无论我如何尝试转义特殊字符 查询总是失败 主要是 未知命令 n 我使用过addslashes mysql real escape strin
  • SQL Join 列上类似于另一列[重复]

    这个问题在这里已经有答案了 可能的重复 mysql连接查询使用like https stackoverflow com questions 1930809 mysql join query using like 我想要进行连接 其中一列包含
  • 错误代码:1305。函数或过程不存在

    因此 我在 MySQL 中创建一个函数 然后尝试向用户授予使用该函数的权限 但我无法这样做 这就是我正在做的 DELIMITER USE rxhelp36 scbn DROP FUNCTION IF EXISTS businessDayDi
  • MySQL 错误 1172 - 结果包含多行

    在存储过程中运行查询时 我从 MySQL 收到此错误 错误代码 1172 结果包含多行 我理解错误 我正在做一个SELECT INTO var list 因此查询需要返回单行 当我使用LIMIT 1 or SELECT DISTINCT 错
  • mysql 中的二进制、十六进制和八进制值

    我对在 mysql 数据库中使用二进制 十六进制和八进制系统非常感兴趣 首先 请给我一个建议 为什么我们在存储信息时需要它们 因为信息太多 或者为什么 另外 哪种类型的值必须存储在标记系统中 另外这里还有像 这是例子 gt SELECT 5
  • MySQL中如何声明变量?

    如何在mysql中声明一个变量 以便我的第二个查询可以使用它 我想写一些类似的东西 SET start 1 SET finish 10 SELECT FROM places WHERE place BETWEEN start AND fin
  • 用 pandas DataFrame 替换 mysql 数据库表中的行

    Python 版本 2 7 6 熊猫版本 0 17 1 MySQLdb 版本 1 2 5 在我的数据库中 PRODUCT 我有一张桌子 XML FEED 表 XML FEED 很大 数百万条记录 我有一个 pandas DataFrame
  • 如何在 SEQUELIZE (nodeJS) 中创建触发器?

    我正在尝试使用sequelize 创建一个触发器 主要思想是创建一个实例CONFIG创建后USER USER MODEL module exports function sequelize DataTypes var User sequel
  • 如何通过Elasticsearch模糊匹配电子邮件或电话?

    我想通过 Elasticsearch 对电子邮件或电话进行模糊匹配 例如 匹配所有以以下结尾的电子邮件 gmail com or 匹配所有电话开头136 我知道我可以使用通配符 query wildcard email gmail com
  • MYSQL - 使用逗号分隔字符串作为变量输入的存储过程

    我希望有人能够提供帮助 我已经创建了我的第一个存储过程 没什么花哨的 但是我遇到了问题 我想给它一个字符串输入 例如 1 2 3 4 5 然后它执行一个简单的操作SELECT FROM TABLE WHERE EAN IN VAR 所以存储
  • mysql排序和排名语句

    我需要一些 mysql 语句的帮助 我的表 1 有 7 列 表 2 有 8 列 额外的列名为排名 我的语句应该是这样的 从表 1 中选择全部 然后按 用户数 排序 将其插入表 2 中并排名开始 1 2 3 等 table 1 usernam
  • MySQL 转储未知选项“-no-beep”

    在旧服务器上我使用了mysql转储命令来备份 MySQL 数据库 在新服务器上 MySQL 版本为 5 6 相同的命令给出了错误 unknown option no beep 无论它插入什么 我也在互联网上搜索过 但找不到任何帮助 在 my

随机推荐

  • 记录·linux系统中硬盘的挂载与格式化

    一 首先为虚拟机添加新硬盘 xff1a 1 单击 硬盘 开始进行硬盘的添加 xff1a 这时新添加的硬盘还不能用 xff0c 我们还需继续进行对磁盘的第二个步骤 xff1a 分区 二 磁盘的分区 1 这时我们需使用 lsblk 命令 xff
  • 记录 · linux系统创建RAID

    目标需求 xff1a 创建RAID卷设备名为md127 级别5 xff0c 使用2个硬盘建立RAID 1个硬盘作为热备份 并创建成ext3系统文件 xff0c 最后挂载到 mnt md127 一 说明 一般创建RAID卷有两种方法 xff0
  • 记录 · Samba服务部署

    Samba 服务器可以使用户在异构网络操作系统之间进行文件共享 Samba 服务器提供了在Windows 环境下共享 Linux 中用户目录的一个工具 在Linux 中安装Samba 后 xff0c Windows 用户只需进行简单的用户登
  • ROS如何创建一个发布者Publisher

    1 创建工作环境 首先我们需要在主文件夹创建功能包 先创建一个文件夹 mkdir catkin ws cd catkin ws mkdir src catkin ws为我们文件夹的名称 添加工程包需要的依赖 cd catkin ws src
  • C++书籍推荐(小白变大牛最全书单)

    一 C 43 43 书籍推荐之手册类 xff08 适用所有级别 xff09 可以关注博主的微 信 公 众 号 xff1a C和C加加 回复 88 即可领取相关电子书和C 43 43 教程大全 1 C 43 43 程序设计语言 The C 4
  • 最新C语言编程软件推荐(2021整理)

    一 C语言编程软件推荐 C语言编程软件适于编写系统软件 xff0c 是学习编程的同学们的必备软件 c语言一种应用非常广泛的编程语言 xff0c 不仅仅是在软件开发上 xff0c 而且各类科研都会用到c语言 今天小编给大家汇总下C语言的编程软
  • Jmeter性能测试(4)---HTTP请求详解

    jmeter xff08 四 xff09 HTTP请求 启动jmeter xff0c 建立一个测试计划 启动 xff1a 打开jmeter文件夹 xff0c bin文件 jmeter bat xff08 Windows执行文件 xff09
  • C语言和C++的区别和联系

    C语言虽说经常和C 43 43 在一起被大家提起 xff0c 但可千万不要以为它们是一种编程语言 我们来介绍C语言和C 43 43 中的区别和联系 首先C 43 43 和C语言本来就是两种不同的编程语言 xff0c 但C 43 43 确实是
  • 字符串的定义及何时添加‘\0‘问题

    定义字符串的六种形式 xff1a char arr 61 34 hello world 34 原理 xff1a 字符串常量的值本质上是第一个字符的地址 char arr arr 61 34 hello world 34 的改写 char a
  • 什么是云技术?

    云技术是指在广域网或局域网内将硬件 软件 网络等系列资源统一起来 xff0c 实现数据的计算 储存 处理和共享的一种托管技术
  • 深度学习神经网络归一化方法及MATLAB函数

    归一化方法及 MATLAB函数 数据归一化方法是神经网络预测前对数据常做的一种处理方法 数据归一化处理把所有数据都转化为 xff3b 0 xff0c 1 xff3d 之间的数 xff0c 其目的是取消各维数据间数量级差别 xff0c 避免因
  • 2022数模国赛B题无人机第一题第一小问的简单编程

    前言 2022年国赛B题是关于无人机定位的抽象模型 xff0c 总体难度不大 接下来简单介绍一下第一题第一小问的程序实现 xff0c 当时国赛仓促 xff0c 写的比较简略 xff0c 仅供参考 背景介绍 无源定位 第一个关键词是无源定位
  • Linux基础之网络编程

    网络编程篇 一 网络编程概述二 字节序三 socket编程步骤四 socket服务端和客户端代码的初步实现五 简单的ftp项目实现的功能有哪些 xff1f 六 ftp项目服务器和客户端代码实现 一 网络编程概述 1 进程间通信 xff1a
  • F450无人机组装与调试

    文章目录 认识无人机零部件机架图片 电机电调螺旋桨飞控套件 包括飞控 LED信号灯 xff0c GPS模块 xff0c 电源管理模块 遥控器及遥控器接收机电池护桨 确认工具清单组装过程1 组装机架2 组装电机判断电机正反选择螺丝组装电机连接
  • Openstack-mitaka安装部署

    openstack 一台controller xff0c 一台compute 且两台均为双网卡 xff0c ens33为主网卡 xff0c ens36不需要配置IP 主机名称 网卡名称 网卡类型 网卡IP ens33 controllere
  • Vue history模式路由 部署到二级目录 配置

    1 nginx配置 https xxxx com cms gt C static server cms location cms root C static server 项目部署资源所在磁盘目录 index index html try
  • 【Docker】将本地镜像推送到远程库/私有库

    前言 这里记录如何将本地镜像推送到远程库和私有库 区别 xff0c 一个是存放到阿里云 xff0c 同一个团队可以登录到同一个阿里云仓库 xff0c 去拉取镜像 一个是存放到本地私有库 xff0c 同一个团队可以连接同一个私有库 xff0c
  • HTTP协议--几种数据传输方式

    1 xff09 无状态 http协议是一种自身不对请求和响应之间的通信状态进行保存的协议 xff0c 即无状态协议 这种设置的好处是 xff1a 更快的处理更多的请求事务 xff0c 确保协议的可伸缩性 不过随着web的不断发展 xff0c
  • PDU 超链接

    http blog sina com cn s blog 453226290102wvnu html http blog sina com cn s blog 453226290102wvnv html http blog sina com
  • Canal监控MySQL数据到Kafka详细步骤(jdk+zookeeper+kafka+canal+mysql)

    目录 一 前言二 环境准备三 安装JDK四 安装zookeeper五 安装Kafka六 安装MySQL七 安装canal服务端 xff08 canal监控mysql数据发送到kafka xff09 八 测试是否可以监控到数据九 结语 一 前