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

ORA-12505错误求助:Weblogic无法连接Oracle数据库

ORA-12505:Weblogic连接Oracle数据库失败排查方案

错误详情

Message icon - Error Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:443)

已尝试公开社区中针对ORA-12505: TNS:listener does not currently know of SID given in connect descriptor (DBD ERROR: OCIServerAttach)的常规解决方案,问题仍未解决,无法从Weblogic建立到Oracle的连接。


深度排查步骤

  • 核对Oracle实例SID准确性
    登录Oracle服务器,执行sqlplus / as sysdba,运行select instance_name from v$instance;获取真实实例SID,严格对比Weblogic连接配置中的SID(Linux环境下SID区分大小写,Windows环境不区分)。

  • 确认监听服务的实例注册状态
    在Oracle服务器执行lsnrctl status,查看Services Summary区域,确认目标SID已注册到监听。若未注册:

    1. 执行lsnrctl reload重新加载监听;
    2. 检查实例监听参数:show parameter local_listener;,若配置错误,执行alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=Oracle服务器IP)(PORT=1521))';,再执行alter system register;强制注册实例到监听。
  • 校验Weblogic JDBC连接配置

    1. 确认JDBC URL格式:使用SID连接时格式为jdbc:oracle:thin:@<Oracle服务器IP>:1521:<SID>;使用服务名时为jdbc:oracle:thin:@//<Oracle服务器IP>:1521/<服务名>,避免SID与服务名混用;
    2. 检查Weblogic数据源配置的“数据库名称”字段,确保填写的是对应连接方式的标识(SID或服务名);
    3. 在Weblogic服务器上执行telnet <Oracle服务器IP> 1521或nc -zv <Oracle服务器IP> 1521,验证端口连通性。
  • 检查Oracle实例运行状态
    在Oracle服务器执行select status from v$instance;,确认实例状态为OPEN。若实例未启动,执行startup命令启动实例。

  • 排查TNS别名配置(若使用)
    若Weblogic通过TNS别名连接,检查Weblogic服务器上的tnsnames.ora文件(路径通常为$ORACLE_HOME/network/admin或Weblogic指定路径),确认别名中的SID、主机、端口配置正确,执行tnsping <TNS别名>测试解析有效性。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 20:55:31