apache-kafka - 更改 connect.offsets kafka 连接器错误
问题描述
我将数据从 binlog mysql 同步到 kafka,有时 binlog 文件已被删除,重新启动连接器时出现错误
org.apache.kafka.connect.errors.ConnectException: The connector is trying to read binlog starting at binlog file 'mysql-bin.000003', pos=154, skipping 0 events plus 0 rows
我将 /tmp/connect.offsets 更改为当前的 binlog 文件。但它再次从数据库推送主题加载所有数据。我想防止这种情况发生,我只想从 binlog 文件中加载更改。
解决方案
这是预期的行为。Debezium 永远不应该关闭那么久,以至于任何尚未看到的 binlog 都被删除,因为这会导致数据不一致,因此错误消息是正确的。
解决这种情况的正确方法是使用snapshot.mode=when_needed
. 您正确提到的另一个解决方案是偏移操作。但是在这里你一定有任何错误,因为你所描述的听起来像连接器根本无法找到偏移量,所以它认为它从头开始并启动一个新的快照。
推荐阅读
- node.js - 无法使用 axios 和 form-data 发布数据或发送文件
- python - 设置允许的压缩文件中的数据类型
- reactjs - 无法在 Gatsby 中注入第 3 方脚本
- reactjs - 如何防止自动增长文本输入容器在 react-native 中在键盘后面增长
- python - 如何在 Python 的帮助下提高 Ping
- flutter - 创建两个相互独立的小部件
- php - 使用 PHP(Oracle 数据库)更新 BLOB 字段图像文件
- python - 如何通过从零开始构建的神经网络提高预测的准确性?
- json - 无法在 Windows 中使用 curl 发布 json 数据
- javascript - 在函数参数中分配变量如何工作?这样做的目的是什么?