Debezium:数据库中没有记录最大LSN;请确保 SQL Server 代理正在运行

2023-11-23

这个问题与:Debezium 如何使用 Kafka Connect 正确注册 SqlServer 连接器 - 连接被拒绝

在 Windows 10 中,我在 Docker 容器外部的 Microsoft SQL Server 实例上运行 Debezium。我每 390 毫秒就会收到以下警告:

数据库中没有记录最大LSN;请确保 SQL 服务器代理正在运行
[io.debezium.connector.sqlserver.SqlServerStreamingChangeEventSource]

我在 Github 上检查了 Debezium 的代码,唯一能找到此警告的地方是在代码注释中指出,只有在代理未运行时才应抛出此警告。我已确认 SQL Server 代理正在运行。

为什么会出现此警告以及如何修复它?

Note:

根据 Docker 的文档,我当前的解决方案似乎仅适用于非生产环境。


LSN 是与 SQL Server 更改相关的信息“片段”。如果您没有 LSN,则可能是您的 CDC 未运行或配置不正确。 Debezium 消耗 LSN 进行复制,因此,您的 SQL Server 需要生成它。

一些方法:

  1. 您是否检查过您的表是否启用了 CDC?这将列出启用了 CDC 的表:
SELECT s.name AS Schema_Name, tb.name AS Table_Name
, tb.object_id, tb.type, tb.type_desc, tb.is_tracked_by_cdc
FROM sys.tables tb
INNER JOIN sys.schemas s on s.schema_id = tb.schema_id
WHERE tb.is_tracked_by_cdc = 1
  1. 您的 CDC 数据库已启用并正在运行? (看here)

检查是否enabled:

SELECT * 
FROM sys.change_tracking_databases 
WHERE database_id=DB_ID('MyDatabase')

并检查是否正在运行:

EXECUTE sys.sp_cdc_enable_db;  
GO  
  1. 您的 CDC 服务正在 SQL Server 上运行吗?看in docs
EXEC sys.sp_cdc_start_job;  
GO  
  1. 在 CDC 中启用表时,我遇到了一些角色名问题。对于我的情况,配置为null解决了我的问题(更多细节here)
    EXEC sys.sp_cdc_enable_table
        @source_schema=N'dbo',
        @source_name=N'AD6010',
        @capture_instance=N'ZZZZ_AD6010',
        @role_name = NULL,
        @filegroup_name=N'CDC_DATA',
        @supports_net_changes=1
     GO
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Debezium:数据库中没有记录最大LSN;请确保 SQL Server 代理正在运行 的相关文章

  • 使用 SQL Server 作为具有多个客户端的数据库队列

    给定一个充当队列的表 如何最好地配置表 查询 以便多个客户端同时处理队列 例如 下表指示了工作人员必须处理的命令 当worker完成后 它会将处理后的值设置为true ID COMMAND PROCESSED 1 true 2 false
  • 一组记录中某些值相同的唯一约束

    DBMS MS Sql Server 2005 标准版 我想创建一个表约束 以便只有一个记录在表的子集中具有特定值 其中行共享特定列中的值 这可能吗 Example 我的 myTable 中有一些记录 其中有一个非唯一的外键 fk1 以及一
  • 动态/条件 SQL 连接?

    我在 MSSQL 表 TableB 中有数据 其中 dbo tableB myColumn 在特定日期后更改格式 我正在做一个简单的连接到该表 Select dbo tableB theColumnINeed from dbo tableA
  • 动态SQL生成列名?

    我有一个查询 我正在尝试将行值转换为列名称 目前我正在使用SUM Case As ColumnName 声明 像这样 SELECT SKU1 SUM Case When Sku2 157 Then Quantity Else 0 End A
  • Sql Server 字符串到日期的转换

    我想像这样转换一个字符串 10 15 2008 10 06 32 PM 转换为 Sql Server 中的等效 DATETIME 值 在 Oracle 中 我会这样说 TO DATE 10 15 2008 10 06 32 PM MM DD
  • Kafka:隔离级别的影响

    我有一个用例 我需要 Kafka 分区中的 100 可靠性 幂等性 无重复消息 以及顺序保留 我正在尝试使用事务 API 来建立概念验证来实现这一目标 有一个名为 isolation level 的设置 我很难理解 In this arti
  • Powershell SQL Server数据库连接和连接超时问题

    我有一个连接到 SQL Server 2012 数据库的 powershell 脚本 该脚本运行 SQL 查询并将结果集放入数据表中 以将格式化的电子邮件发送给相关方 下面是问题所在的代码片段 CBA New Object System D
  • 如何将存储过程中的值返回到 EF

    我试图通过 EF 调用存储过程并从存储过程中检索返回值 我用过this https stackoverflow com questions 6861737 executesqlcommand with output parameter an
  • Kafka JDBC Sink Connector 对于具有可选字段的模式的消息给出空指针异常

    Kafka JDBC Sink Connector 对于具有可选字段 parentId 的模式的消息给出空指针异常 我错过了什么吗 我正在使用开箱即用的 JSONConverter 和 JDBC Sink Connector 关于 Kafk
  • 在 SQL Server 数据库之间传递用户定义的表类型

    我在 SQL Server 的一个数据库中有一个用户定义的表类型 我们称之为DB1 我的类型的定义非常简单 仅包含 2 列 创建我的类型的脚本如下 CREATE TYPE dbo CustomList AS TABLE ID int Dis
  • 如何检查是否启用了更改跟踪

    我试图在运行之前确定我的数据库是否已启用更改跟踪ALTER DATABASE命令来启用它 我试图防止这些脚本多次运行时出现错误 我签到了sys databases and sys dm tran commit table但无法找到我要找的东
  • SQL 查询在多用户环境中返回错误值

    一段时间以来 我们在我们的一个客户站点上发现了奇怪的数据完整性问题 经过大量调查后 我们现在已将其隔离为数据库调用 如果两个用户同时调用同一个存储过程 有时一个用户会得到另一个用户的结果 我们设置了一个测试来验证这一点 并且我们有一个循环
  • 获取下一个ID而不插入行

    在 SQL SQL Server 中是否可以在插入行之前从表中的标识列检索下一个 ID 整数 而无需实际插入行 如果删除了最近的行 则这不一定是最高 ID 加 1 我问这个问题是因为我们偶尔需要用新行更新实时数据库 行的 ID 在我们的代码
  • SQL Server 到 er 模型

    是否有程序可以将 SQL Server 数据库图表转换为 er 模型 或者从 SQL Server 服务器创建数据库的 er 模型 在 SQL Server 中 Management Studio 中的每个数据库都有 数据库图 功能 您可以
  • 如何列出表中的所有列?

    对于各种流行的数据库系统 如何列出表中的所有列 对于 MySQL 请使用 DESCRIBE name of table 只要您使用 SQL Plus 或 Oracle 的 SQL Developer 这也适用于 Oracle
  • 使用 SqlDataReader.IsDBNull 时使用列名

    我已经得到了从 SQL DB 读取数据的代码 我不知道应该如何编辑它 以便我可以使用原始列名称而不是列索引 string query SELECT FROM zajezd WHERE event thisrow AND year klien
  • 显示包含特定表的所有数据库名称

    我的 SQL Server 中有很多数据库 我必须只搜索包含特定表名的数据库名称Heartbitmaster 我有很多数据库 例如Gotgold DVD等 我只想从包含此表的查询中查找数据库名称Heartbitmaster 我搜索我尝试查询
  • 如何识别 SQL Azure 中的死锁?

    我有一个由两个实例组成的 Windows Azure 角色 有时交易会失败并显示SqlException与以下文字 事务 进程 ID N 在锁资源上与另一个进程发生死锁 并被选为死锁牺牲品 重新运行事务 现在我已经谷歌搜索了一段时间并阅读这
  • TSQL如何在xml列中选择具有技能的员工

    在如下所示的表架构中 CREATE TABLE dbo Employee EmployeeId uniqueidentifier NOT NULL Name nvarchar 50 NOT NULL Location nvarchar 50
  • asp.net网格分页的SQL查询

    我在用iBatis and SQLServer 使用偏移量和限制进行分页查询的最佳方法是什么 也许我添加该列ROW NUMBER OVER ORDER BY Id AS RowNum 但这只会阻止简单查询的数据访问 在某些情况下 我使用选择

随机推荐

  • MySql 单表,选择最近 7 天并包含空行

    我在 stackoverflow 上搜索了类似的问题 但我不明白如何使这项工作 我正在尝试做什么 因此 我想从数据库中获取最近 7 天的交易并获取总销售额 如果某天没有数据 还包括空行 到目前为止我所拥有的 http sqlfiddle c
  • Angular-CLI 和 ThreeJS

    我一直在尝试添加适当的 npm 依赖项 以将三个依赖项添加到我的 Angular CLI 项目中 过去几个月 CLI 变化如此之快 我一直找不到工作源 这里有一些想法 搭载脚本 这是我的第一次尝试 简单地添加到index html 文件 但
  • 安装自定义 Cocoa 框架的最佳方法

    我有一个自定义框架 遵循 Apple 框架编程指南中的建议 gt gt 安装你的框架我安装在 Library Frameworks 中 我通过使用以下脚本添加运行脚本构建阶段来实现此目的 cp R build Debug MyFramewo
  • Android 中的 onResume() 是在 onRequestPermissionsResult() 之后调用的吗?

    我有一个活动 我已经把checkSelfPermission and requestPermissions中的方法onCreate method 我也有一个onRequestPermissionsResultonCreate 之外的方法 最
  • 加载时隐藏 jQuery Accordion

    我正在测试一个连接速度较慢的网站构建 我注意到 jQuery Accordion 会长时间保持展开状态 直到网站的其余部分加载完毕 然后最终崩溃 不太漂亮 我想知道如何在加载过程中保持它折叠并仅在单击时展开 我正在使用独立的 1 6 版本的
  • docker多阶段构建Go镜像-x509:由未知权威机构签名的证书

    我尝试建立go图像在私人公司网络使用docker 多阶段构建 FROM golang latest as builder WORKDIR app COPY go mod go sum RUN go mod download COPY RUN
  • 升级到 Android Studio 2.3 后 android-apt 的插件不兼容

    从 2 2 升级到 2 3 后 我看到此警告 当我尝试编译该项目时 我看到这个编译错误 如何在不降级到以前的 gradle 版本的情况下解决此问题 有没有 android apt 的更新可以解决这个问题 The android apt pl
  • 断言Equal和断言Is之间有什么区别(assertIs是在Python 2.7中引入的)?

    参考 http docs python org library unittest html assert methods assertEqual a b checks that a b assertIs a b checks that a
  • 逐渐旋转物体以面对一点?

    我正在制作一个 JavaScript 游戏 我希望敌方船只能够向指定点旋转 然后可以根据它们的角度计算它们的运动 仅当船舶位于其目标的下方和右侧时 以下旋转代码才有效 如果船在左边 它会旋转到约 0 度并在那里抖动 在右上角 它不断逆时针旋
  • 如何将列表中的各个元素与数字相乘?

    S 22 33 45 6 21 6 51 8 P 2 45 Here S是一个数组 我如何将其相乘并得到该值 SP 53 9 80 85 111 72 52 92 126 91 在 NumPy 中这非常简单 import numpy as
  • 如何在发送到服务器之前在 JavaScript 中压缩/gzip 用户数据?

    我对 JavaScript 还很陌生 我遇到过这样的情况 许多用户可以将大型 JSON 发送回服务器 为了限制流量 我想对它们进行 gzip 压缩 这在 JavaScript 中可能吗 如何从 JSON 的字符串表示形式创建字节数组 谢谢
  • Delphi:远离 VSS

    我们是由少数 Delphi 开发人员组成的团队 他们多年来一直在使用 VSS 我知道这很遗憾 但我们没有使用 VCS 的任何高级功能 因此它在很多情况下都工作正常 但有时它是快把我逼疯 VSS 的好处是我们使用第三方插件将 VSS 与 De
  • 使用 Oracle OLE DB 提供程序时如何解决 SQL 查询参数映射问题?

    当尝试使用 Oracle OLE DB 提供程序输入带参数的 SQL 查询时 出现以下错误 无法从 SQL 命令中提取参数 提供程序可能无法帮助解析命令中的参数信息 在这种情况下 请使用 来自变量的 SQL 命令 访问模式 其中整个 SQL
  • 在 OpenShift 中提供 Django 静态文件

    根据2014 年 3 月博客文章 OpenShift 现在删除了一些目录 如 wsgi wsgi static data 和 libs 鉴于我使用 wsgi static 来实现此目的 从现在开始我应该如何提供 django 静态文件 根据
  • 想要使用向量作为函数的参数,而不必分隔其元素

    如果我使用以下命令调用 matlab 函数 函数 1 2 3 4 5 它工作得很好 但如果我这样做 a 1 2 3 4 5 a 1 2 3 4 5 给出相同的结果 then func a 给我 错误 gt 函数位于 11 没有足够的输入参数
  • 使用 Java Native Interface 的缺点

    我无法理解使用 JNI 的这两个缺点 我想更多地了解他们 很难调试运行时错误 本机代码 JNI 代码中的错误会导致整个 JVM 崩溃 并且不提供任何正常恢复机制 调试困难 您需要一个 C C 调试器来调试本机代码 不可能轻松地从 Java
  • 加载 GIF(预加载器)仅在 Chrome 上卡住

    我的网站上有一个画廊 该图库包含 15 张图片 每张约 500KB 总大小为 7 5MB 因为图库需要一段时间才能加载 在我的计算机上需要 25 秒 这取决于连接情况 我希望访问者知道图库正在加载 因此Ajax 加载 GIF 我希望访问者一
  • 按相关实体字段对 Sonata Admin 中的列表视图进行排序

    使用 Sonata Admin Bundle 这是 Symfony 的一个很棒的附加组件 时 我遇到了如下所述的问题 假设我们有 3 个实体 城市 州和国家 他们都有属性id and name 城市与州之间存在多对一的关系 州与国家之间存在
  • 使用数值对字符串列表进行排序

    我有一个字符串列表 它最有可能但不能保证包含数字列表 即 1 6 2 21 89 有什么方法可以对字符串列表进行排序 使其始终按升序显示 在进行排序之前 我无法先将字符串解析为数字 因为字符串can包含非数字字符 我不想遍历列表并将每个组件
  • Debezium:数据库中没有记录最大LSN;请确保 SQL Server 代理正在运行

    这个问题与 Debezium 如何使用 Kafka Connect 正确注册 SqlServer 连接器 连接被拒绝 在 Windows 10 中 我在 Docker 容器外部的 Microsoft SQL Server 实例上运行 Deb