OracleDB连接报错DPY-6005:目标机器主动拒绝连接求助
排查DPY-6005/WinError 10061连接拒绝问题的步骤
- 检查目标服务器防火墙:你只关闭了本地防火墙,目标机器的防火墙大概率在拦截默认的1521端口。登录到目标Oracle服务器,要么临时关闭防火墙测试,要么添加入站规则,允许你的客户端IP访问1521端口。
- 验证Oracle监听服务状态:在目标服务器上执行命令
lsnrctl status,查看监听是否正常启动,且监听端口是1521(或你自定义的端口)。如果监听没运行,执行lsnrctl start启动它。 - 核对连接参数准确性:
- 确认DSN格式正确,示例:
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=目标服务器IP)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=你的数据库服务名))),注意别搞混SERVICE_NAME和SID,大部分场景用SERVICE_NAME。 - 本地用
tnsping 目标IP:1521/服务名测试连接,不通的话说明网络或配置存在问题。
- 确认DSN格式正确,示例:
- 确认目标数据库服务状态:登录目标服务器,检查Oracle数据库服务(比如OracleServiceORCL这类命名的服务)是否正常运行,服务未启动会直接拒绝连接请求。
- 测试基础网络连通性:
- 先执行
ping 目标服务器IP,确认网络能通。 - 再用
telnet 目标服务器IP 1521测试端口是否开放,telnet连不上的话,说明网络层面有拦截,可能是路由、交换机规则或目标端口未开放。
- 先执行
- 检查oracledb版本兼容性:确保你使用的oracledb版本和目标Oracle数据库版本匹配,比如Oracle 11g需要用oracledb 1.x版本,12c及以上版本可以用oracledb 2.x版本。
内容的提问来源于stack exchange,提问作者Sai
相关产品推荐
相关产品推荐

