You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Kafka Connect同步Oracle数据时遇ORA-01005空密码登录拒绝错误

解决Kafka Connect Oracle源连接器ORA-01005密码为空错误

针对你遇到的java.sql.SQLException: ORA-01005: null password given; logon denied错误,即便配置文件中已明确填写密码,可从以下几个方向排查:

1. 检查配置文件格式与加载有效性

  • 确认connection.password=khldev行无多余前导/末尾空格,未用引号包裹密码(除非密码含@、#这类特殊字符,你的密码无特殊字符无需额外处理)。
  • 通过Kafka Connect的REST API查看连接器实际加载的配置:
    curl http://<connect-host>:8083/connectors/oracle-source-connector/config
    
    若返回结果中connection.password为null,说明配置文件未被正确读取。

2. 排查配置优先级冲突

Kafka Connect会优先使用环境变量覆盖配置文件内容,若系统中设置了CONNECT_CONNECTION_PASSWORD环境变量且值为空,会覆盖你配置文件中的密码。可通过以下命令检查环境变量:

echo $CONNECT_CONNECTION_PASSWORD

若存在空值,需清除该环境变量后重启Connect。

3. 验证配置文件权限与加载方式

  • 确保运行Kafka Connect的进程用户拥有配置文件的读取权限(比如将文件权限设置为644)。
  • 尝试跳过配置文件,直接通过REST API提交JSON格式的配置(示例如下),若能正常启动连接器,说明原配置文件存在格式或路径加载问题:
curl -X POST -H "Content-Type: application/json" --data '{
  "name": "oracle-source-connector",
  "config": {
    "connector.class": "io.confluent.connect.jdbc.JdbcSourceConnector",
    "tasks.max": "1",
    "connection.url": "jdbc:oracle:thin:@//x.x.x.x:xxxx/khldbdev",
    "connection.user": "khldev",
    "connection.password": "khldev",
    "table.whitelist": "TABLE_TEST",
    "mode": "incrementing",
    "incrementing.column.name": "ID",
    "topic.prefix": "oracle_TABLE_TEST"
  }
}' http://<connect-host>:8083/connectors

4. 确认JDBC驱动兼容性

确保你下载的Oracle JDBC驱动版本与数据库版本匹配:

  • Oracle 11g对应ojdbc6.jar
  • Oracle 12c及以上对应ojdbc8.jar或更高版本
    驱动版本不兼容可能引发异常,导致密码校验逻辑异常。

内容的提问来源于stack exchange,提问作者M99

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 01:03:22