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

使用oracledb连接Python与Oracle时遇连接拒绝问题及咨询

Oracle oracledb 连接问题解决及疑问解答

连接报错与service_name配置说明

  • 你遇到的WinError 10061是目标机器主动拒绝连接,除了service_name错误,也可能是未指定数据库地址/端口、数据库未启动或防火墙拦截,但针对你怀疑的service_name问题:
    • 需填写数据库服务名,而非TNS服务名。TNS服务名是本地tnsnames.ora中的别名,service_name是数据库端实际配置的服务标识。
    • 格式无需带local/,直接填写数据库服务名即可。若不确定服务名,可在数据库端执行查询确认:
      SELECT value FROM v$parameter WHERE name = 'service_names';
      

复用JDBC URL连接的方法

  • 可以直接在oracledb.connect()中复用JDBC风格的URL,只需去掉jdbc:oracle:thin:@前缀,将剩余部分作为dsn参数传入。例如你的JDBC URL是"jdbc:oracle:thin:@ldap://ldaptns...",连接代码可改为:
    import oracledb
    connection = oracledb.connect(user='user', password='PW', dsn='ldap://ldaptns...')
    
  • 也可以直接传入完整的JDBC URL作为dsn参数,不过去掉前缀是更规范的用法,两种方式通常都能正常工作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 07:22:09