"OceanBase数据库com.oceanbase.clogproxy.client.exception.LogProxyClientException: Unsupported protocol version: 19968
flink cdc读取ob的clog的时候,麻烦问下有没有遇到类似的问题?"
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
根据您提供的错误信息 com.oceanbase.clogproxy.client.exception.LogProxyClientException: Unsupported protocol version: 19968
,以及问题背景(Flink CDC 读取 OceanBase 的 CLog),以下是可能的原因分析和解决方案:
协议版本不匹配
错误提示 Unsupported protocol version: 19968
表明 Flink CDC 客户端与 OceanBase 的 CLog Proxy 之间的通信协议版本不兼容。这通常是由于以下原因之一导致的:
CLog Proxy 配置问题
如果 CLog Proxy 的配置文件中未正确设置支持的协议版本范围,可能会导致客户端请求被拒绝。
依赖库版本问题
Flink CDC 连接 OceanBase 时,可能使用了不兼容的依赖库(如 obkv-table-client-go
或其他相关库),导致协议解析失败。
确保 Flink CDC 客户端版本与 OceanBase 数据库版本兼容。建议参考以下步骤: - 确认 OceanBase 数据库的版本(例如 4.x 或 3.x)。 - 根据 OceanBase 版本选择对应的 Flink CDC 客户端版本。如果不确定,请参考官方文档或联系技术支持。
如果当前使用的 Flink CDC 客户端版本较旧,建议升级到最新版本。可以通过以下命令获取最新依赖:
go get github.com/oceanbase/obkv-table-client-go
同时,确保 Flink CDC 的配置文件中指定了正确的 OceanBase 连接参数(如 odpIP
、odpRpcPort
等)。
确认 CLog Proxy 的配置文件中是否正确设置了支持的协议版本范围。例如: - 检查 clog_proxy.conf
文件中的 protocol_version_range
参数。 - 确保该参数包含客户端请求的协议版本(如 19968
)。
如果配置文件中未明确指定协议版本范围,可以尝试添加以下内容:
protocol_version_range=19968-20000
然后重启 CLog Proxy 服务。
确保 Flink CDC 客户端能够正常访问 OceanBase 的 CLog Proxy 服务。可以通过以下方式验证: - 使用 ping
或 telnet
测试 CLog Proxy 的 IP 和端口是否可达。 - 检查防火墙规则,确保相关端口(如默认的 3307)未被阻塞。
如果上述方法均无法解决问题,建议收集以下信息并联系 OceanBase 技术支持团队: - OceanBase 数据库版本。 - Flink CDC 客户端版本。 - CLog Proxy 的日志文件(通常位于 /var/log/clog_proxy/
目录下)。 - 完整的错误堆栈信息。
通过以上步骤,您应该能够解决 Unsupported protocol version: 19968
的问题。如果仍有疑问,请提供更多上下文信息以便进一步分析。