2

我正在使用 Oracle 11g R2 数据库。我使用 Oracle SQL Developer。如果我创建一个新连接并检查基本连接类型并填写我可以连接的字段。如果我选择 TNS 并在下拉菜单中选择我想要的,它会显示失败 E/S 异常:网络适配器无法建立连接。

这是 tnsnames.ora。我用它连接到 2 个数据库,dblilly 和 astrea。我可以正确连接到astrea。侦听器已打开并且实例已准备就绪。你看到我想念的东西了吗?您需要更多信息来帮助我吗?

# tnsnames.ora 网络配置文件:C:\OracleODAC\x32\network\admin\tnsnames.ora
# 由Oracle 配置工具生成。

LIDA_ALC_DBLILLY=
  (描述=
    (地址=
      (协议=TCP)
      (主机=192.168.109.107)
      (端口=1521)
    )
    (连接数据=
      (服务器=专用)
      (SERVICE_NAME=orcl)
    )
  )

LIDA_INDY_DBLILLY=
  (描述=
    (地址=
      (协议=TCP)
      (主机=192.168.109.107)
      (端口=1521)
    )
    (连接数据=
      (服务器=专用)
      (SERVICE_NAME=orcl2)
    )
  )

HARVEST_DBLILLY=
  (描述=
    (地址=
      (协议=TCP)
      (主机=192.168.109.107)
      (端口=1521)
    )
    (连接数据=
      (服务器=专用)
      (SERVICE_NAME=orcl2)
    )
  )

DELTA_DBLILLY=
  (描述=
    (地址=
      (协议=TCP)
      (主机=192.168.109.107)
      (端口=1521)
    )
    (连接数据=
      (服务器=专用)
      (SERVICE_NAME=orcl2)
    )
  )

AUTOLAB_DBLILLY=
  (DESCRIPTION_LIST=
    (描述=
      (地址=
        (协议=TCP)
        (主机=192.168.109.107)
        (端口=1521)
      )
      (连接数据=
        (服务器=专用)
        (SERVICE_NAME=orcl2)
      )
    )
    (描述=
      (地址=
        (协议=TCP)
        (主机=192.168.109.107)
        (端口=1521)
      )
      (连接数据=
        (服务器=专用)
        (SERVICE_NAME=orcl2)
      )
    )
    (描述=
      (地址=
        (协议=TCP)
        (主机=192.168.109.103)
        (端口=1521)
      )
      (连接数据=
        (服务器=专用)
        (SERVICE_NAME=orcl.cartif.local)
      )
    )
  )

LIDA_INDY_ASTREA=
  (描述=
    (地址=
      (协议=TCP)
      (主机=192.168.109.103)
      (端口=1521)
    )
    (连接数据=
      (服务器=专用)
      (SERVICE_NAME=orcl.cartif.local)
    )
  )

HARVEST_ASTREA=
  (描述=
    (地址=
      (协议=TCP)
      (主机=192.168.109.103)
      (端口=1521)
    )
    (连接数据=
      (服务器=专用)
      (SERVICE_NAME=orcl.cartif.local)
    )
  )

DELTA_ASTREA=
  (描述=
    (地址=
      (协议=TCP)
      (主机=192.168.109.103)
      (端口=1521)
    )
    (连接数据=
      (服务器=专用)
      (SERVICE_NAME=orcl.cartif.local)
    )
  )

AUTOLAB_ASTREA=
  (DESCRIPTION_LIST=
    (描述=
      (地址=
        (协议=TCP)
        (主机=192.168.109.103)
        (端口=1521)
      )
      (连接数据=
        (服务器=专用)
        (SERVICE_NAME=orcl.cartif.local)
      )
    )
    (描述=
      (地址=
        (协议=TCP)
        (主机=192.168.109.103)
        (端口=1521)
      )
      (连接数据=
        (服务器=专用)
        (SERVICE_NAME=orcl.cartif.local)
      )
    )
  )
# listener.ora 网络配置文件:/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# 由Oracle 配置工具生成。

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = orcl2
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
      (程序 = extproc)
      (ENVS =“EXTPROC_DLLS=ONLY:/u01/app/oracle/product/11.2.0/dbhome_1/bin/oraclr11.dll”)
    )
  )

听众 =
  (DESCRIPTION_LIST =
    (描述 =
      (地址 =(协议 = IPC)(密钥 = EXTPROC1521))
      (地址 =(协议 = TCP)(主机 = dblilly)(端口 = 1521))
    )
  )

ADR_BASE_LISTENER = /u01/app/oracle

lsnrctl 状态

oracle@dblilly:/root> lsnrctl 状态监听器                                   
适用于 Linux 的 LSNRCTL:版本 11.2.0.1.0 - 2015 年 8 月 24 日 14:57:02 生产

版权所有 (c) 1991、2009,甲骨文。版权所有。

连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
监听器的状态
----------------------
别名监听器
适用于 Linux 的版本 TNSLSNR:版本 11.2.0.1.0 - 生产
开始日期 2015 年 8 月 24 日 12:49:04
正常运行时间 0 天 2 小时。7 分钟。58 秒
跟踪级别关闭
安全开启:本地操作系统身份验证
SNMP 关闭
监听器参数文件 /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
侦听器日志文件 /u01/app/oracle/product/11.2.0/dbhome_1/network/log/listener.log
侦听端点摘要...
  (描述=(地址=(协议=ipc)(密钥=EXTPROC1521)))
  (描述=(地址=(协议=tcp)(主机=dblilly)(端口=1521)))
服务总结...
服务“orcl2”有 1 个实例。
  实例“orcl2”,状态 READY,有 1 个用于此服务的处理程序...
 (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1" 有 1 个实例。
 (ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1”,状态未知,此服务有 1 个处理程序...
服务“orcl2XDB”有 1 个实例。
  实例“orcl2”,状态 READY,有 1 个用于此服务的处理程序...
命令成功完成

我可以使用以下设置进行连接:

我可以使用此设置进行连接

但不能用这个

我无法连接

4

1 回答 1

0

在您的 listener.ora 中,您缺少围绕 ENVS 参数 的关闭"和关闭。)

您的 TNSNames 文件设置为使用服务,但是在 SQL Developer 中,您通过 SID 进行连接。您还应该更改您的 TNSNames 以指定 SID 而不是服务名称。

SID 与服务名称

于 2015-08-24T12:25:37.647 回答