这个问题与:debezium如何用kafka connect正确注册sqlserver连接器-connection拒绝
在windows10中,我在docker容器外部的microsoftsqlserver示例上运行debezium。我每390毫秒收到以下警告:
数据库中没有记录最大lsn;请确保sql server代理正在运行
[io.debezium.connector.sqlserver.sqlserverstreamingchangeeventsource]
我在github上检查了debezium的代码,在代码注解中唯一可以找到这个警告的地方指出,只有在代理没有运行时才应该抛出这个警告。我已确认sql server代理正在运行。
为什么会出现此警告?如何修复它?
注:
根据docker的文档,我当前的解决方案似乎只能在非生产环境中工作。
1条答案
按热度按时间wqnecbli1#
lsn是与sql server更改相关的“片段”信息。如果您没有lsn,可能是您的cdc没有运行或配置不正确。debezium使用lsn进行复制,因此,您的sql服务器需要生成这个。
一些方法:
是否检查了表是否启用了cdc?这将列出启用cdc的表:
您的cdc数据库已启用并正在运行((见此处)
检查是否启用:
并检查是否正在运行:
您的cdc服务正在sql server上运行?见文件
在cdc中启用表时,我对rolename有一些问题。就我而言,在
null
解决了我的问题(更多细节在这里)