如何使用Docker部署debezium来监控 MySQL 数据库

2023-09-08 19:11:01

目录

一、什么是Docker

二、什么是debezium

三、什么是MySQL

四、如何使用Docker部署debezium来监控 MySQL 数据库


一、什么是Docker

Docker是一个开源的应用容器引擎,它让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。它有助于更快地交付应用,可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。使用Docker可更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。

二、什么是debezium

Debezium是一个用来捕获数据库数据变更的分布式服务。它可以以更改事件流的形式记录每张表的行级变更,并允许应用以事件流产生的顺序读取事件流变更记录。目前,Debezium支持多种源连接器(Source Connectors),包括Mysql,MongoDB,PostgresSQL,Oracle,SQL Server,Db2,Cassamdra,Vitess等。

三、什么是MySQL

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,属于Oracle旗下产品。它是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(关系数据库管理系统)应用软件之一。

关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择MySQL作为网站数据库。

四、如何使用Docker部署debezium来监控 MySQL 数据库

安装Docker:如果您尚未安装Docker,请根据您的操作系统版本参考Docker官方文档进行安装。

创建MySQL Docker容器:运行以下命令创建一个MySQL Docker容器。您可以选择使用官方的MySQL Docker镜像。
 

docker run --name mysql -e MYSQL_ROOT_PASSWORD=<password> -e MYSQL_DATABASE=<database_name> -e MYSQL_USER=<username> -e MYSQL_PASSWORD=<password> -d mysql:latest
* `<password>`:为MySQL root用户设置密码
* `<database_name>`:您要创建的数据库名称
* `<username>`:您要创建的MySQL用户名
* `<password>`:为新创建的MySQL用户设置密码请注意,上述命令中使用了`-e`参数来设置环境变量。这些变量将在MySQL容器中配置MySQL服务器。您可以根据需要调整这些变量。

等待MySQL容器启动:运行以下命令等待MySQL容器启动。

docker wait mysql

创建Debezium Docker容器:运行以下命令创建一个Debezium Docker容器。使用Debezium官方提供的Docker镜像。

docker run --name debezium -d --link mysql:mysql -p 8080:8080 -p 8081:8081 -p 3030:3030 -p 57011:57011 -p 57012:57012 -p 57013:57013 -p 57014:57014 -p 57015:57015 -p 57016:57016 -p 9999:9999 -e ZOOKEEPER_HOSTS=localhost:2181 debezium/connect:latest
* `mysql`:在前面步骤中创建的MySQL容器的名称
* `localhost:2181`:Zookeeper的主机名和端口号。请注意,Debezium使用Zookeeper进行协调。如果您的Zookeeper部署在本地,则使用`localhost:2181`。如果您的Zookeeper部署在其他位置,请相应地更改此值。
* `debezium/connect:latest`:Debezium Connect Docker镜像的名称。此镜像包含了Debezium Connectors和相关的依赖项。

启动Debezium容器:运行以下命令启动Debezium容器。

docker start debezium

Debezium监视MySQL:现在,Debezium将监视MySQL容器中的数据库更改。您可以使用Debezium UI来查看捕获的数据和更改历史记录。默认情况下,Debezium UI可通过以下URL访问:http://localhost:8080/

如果您要进行任何更改或配置,可以使用docker exec命令进入Debezium容器,并编辑相关文件或执行其他操作。例如,要编辑Debezium Connect的配置文件,可以运行以下命令:

docker exec -it debezium /bin/bash

这将进入Debezium容器的交互式终端,您可以在其中编辑配置文件或执行其他所需的操作。

更多推荐

清水模板是什么材质?

清水模板是建筑施工中常用的一种模板,用于浇筑混凝土结构的形成和支撑。它是指没有进行任何装饰和涂层处理的模板,通常由木材制成,如胶合板、钢模板等。下面是关于清水模板的详细介绍。清水模板的材质多样,其中最常见的是胶合板。胶合板是由多层薄木板通过交错堆叠、胶合而成的板材。由于其具有较高的强度、稳定性和耐久性,因此在建筑施工中

Java-根据模板生成PDF

文章目录前言一、准备模板二、代码实现三、源代码总结前言在有些场景下我们可能需要根据指定的模板来生成PDF,比如说合同、收据、发票等等。因为PDF是不可编辑的,所以用代码直接对PDF文件进行修改是很不方便的,这里我是通过itext和AdobeAcrobat来实现的,以下就是具体实现方法。一、准备模板AdobeAcroba

这些PLC串口通讯和通讯接口知识,你都了解吗?

在使用PLC的时候会接触到很多的通讯协议以及通讯接口,最基本的PLC串口通讯和基本的通讯接口你都了解吗?一、什么是串口通讯?串口是一种接口标准,是计算机上一种非常通用设备通信的协议。它规定了接口的电气标准,没有规定接口插件电缆以及使用的协议。典型的串口通讯标准常见有如下三种。EIARS232(通常简称“RS232”):

【视觉SLAM入门】7.4.后端优化 --- 基于位姿图和基于因子图

"议论平恕,无所向背”1.位姿图1.1具体做法1.2小结2.因子图2.1具体做法2.1.1贝叶斯网络2.1.2因子图2.1.3更具体的因子图2.1.4增量的求解方法引入:上节BA将位姿和路标都作为优化的节点,H矩阵也告诉我们路标远大于位姿,时长会导致资源等问题。办法:滑动窗口法:保持H固定大小,丢弃历史位姿图:不管路标

【Linux】 OpenSSH_7.4p1 升级到 OpenSSH_9.3p1(亲测无问题,建议收藏)

👨‍🎓博主简介🏅云计算领域优质创作者🏅华为云开发者社区专家博主🏅阿里云开发者社区专家博主💊交流社区:运维交流社区欢迎大家的加入!🐋希望大家多多支持,我们一起进步!😄🎉如果文章对你有帮助的话,欢迎点赞👍🏻评论💬收藏⭐️加关注+💗文章目录文章声明前述安装一些必要的命令(需要用到的)Centos服务

VUE3写后台管理(3)

VUE3写后台管理(3)1.环境1.node2.vite3.Element-plus4.vue-router5.elementicon6.less7.vuex8.vue-demi9.mockjs10.axios11.echarts2.首页1.布局Main2.头部导航栏CommonHeader3.左侧菜单栏CommonL

【半监督光谱退化约束网络:Spectral Super-Resolution】

SemisupervisedSpectralDegradationConstrainedNetworkforSpectralSuper-Resolution(基于半监督光谱退化约束网络的光谱超分辨)最近,已经设计了各种基于深度学习的方法来提高多光谱图像(MSI)的光谱分辨率以获得高光谱图像(HSI)。这些方法通常依赖于

深入实现 MyBatis 底层机制的任务阶段2 - 编写执行器与数据库操作

😀前言本文将继续深入研究自己实现MyBatis底层机制的过程,特别关注任务阶段2-编写执行器与数据库操作。这个任务阶段是自定义MyBatis底层机制的关键一步,它涵盖了执行器的创建和SQL查询操作的实现,为我们的自定义框架提供了重要的数据库操作功能。.在本文中,我们将详细探讨如何编写执行器,如何输入SQL语句,并完成

通信方向预推免经验贴

文章目录背景墙投递选项预推免分析背景墙自己拿到东南移动通信方向1W+引牛导学硕,拒绝了浙大直博之后就变的非常佛系~~其实自己也不知道选择做的对不对,浙大导人品非常好,和蔼可亲,国外资源也挺充足,科研水平是华五比较厉害的副教授范畴,自己感觉是拒绝了人生的另外一种可能性。如果是为了华五文凭,跨界转行的话,似乎自己人生可能会

腾讯云阿里云云服务器 Linux 操作系统 BT 宝塔面板快速建站教程

宝塔面板概述宝塔面板是一款服务器管理软件,支持Windows和Linux系统,可以通过Web端轻松管理服务器,提升运维效率。总体来说,宝塔面板具有操作简单、功能丰富、安全可靠等特点,是一款非常实用的服务器管理软件。宝塔面板官方网站:https://www.bt.cn/宝塔面板特点1.提供了可视化文件管理器和资源监控图表

MyBatis基础之执行SQL

文章目录执行SQL语句1.增删改操作insert元素insert过程中的主键回填delete元素和update元素2.getMapper方法3.查操作select元素select与聚合函数4.传递多个参数使用Map传递多参数使用JavaBean传递多参使用注解方式传递多参数执行SQL语句Mapper是MyBatis最强

热文推荐