【问题标题】:TNS:could not resolve the connect identifier specifiedTNS:无法解析指定的连接标识符
【发布时间】:2013-04-19 01:13:41
【问题描述】:

我的 Windows 7 机器上安装了 oracle server 11g。我必须从远程机器安装此服务器。远程机器是 64 位系统,Ubuntu 12.10。为了访问服务器,我安装了 Oracle 即时客户端并配置了一切。

ORACLE_HOME、TNS_ADMIN、PATH、LD_LIBRARY_PATH 都已设置,并且指向正确的位置。

我的 tnsname.ora 文件:

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = ravi)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.xxx.com)
    )
  )

我的 sqlnet.ora 文件

SQLNET.AUTHENTICATION_SERVICES= (NTS)

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

我在服务器上的 tnslistener 已启动并正在运行。

LSNRCTL> services
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
         LOCAL SERVER
Service "orcl.xxx.com" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:221 refused:0 state:ready
         LOCAL SERVER
Service "orclXDB.xxx.com" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
      "D000" established:0 refused:0 current:0 max:1022 state:ready
         DISPATCHER <machine: ravi, pid: 4844>
         (ADDRESS=(PROTOCOL=tcp)(HOST=ravi.xxx.com)(PORT=49239))
The command completed successfully

即使设置了所有这些,我也无法连接到服务器。

当我发出sqlplus user1@orcl 命令时,我得到了

ravi@ubuntu:~/app/ravi/product/11.2.0/dbhome_1/bin$ sqlplus user1@orcl

SQL*Plus: Release 11.2.0.1.0 Production on Thu Apr 25 01:17:01 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Enter password: 
ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified

这些帖子我都看过了,

Sqlplus login error when using bash variables: SP2-0306: Invalid option

ora-12154 could not resolve... with oracle instant client

实际上还有许多其他帖子,但没有一个可以解决我的问题。

寻求帮助

提前致谢

【问题讨论】:

  • 如果你tnsping orcl会发生什么?
  • 另外,这可能更适合 dba.stackexchange.com
  • 你说环境变量设置好了,但是都导出了,特别是TNS_ADMIN?您显示的tnsnames.ora 位于Ubuntu 服务器上的$TNS_ADMIN 目录中,对吧? (只是检查...)
  • 对我来说,问题出在 tnsnames.ora 和 sqlnet.ora 文件本身。这些文件从 Windows 机器复制到 linux 机器。我必须对这些文件执行 dos2unix 才能使其正常工作。

标签: oracle oracle11g oracleclient ora-12154


【解决方案1】:

您的监听器配置不正确,我认为...

你能上传吗:

.- listener.ora ?

.- netstat -na|grep 1521

这是我的“服务”输出之一

LSNRCTL> 服务

连接到 (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) 服务总结... 服务“eva”有 1 个实例。 实例“eva1”,状态 READY,有 1 个用于此服务的处理程序... 处理程序: “专用”成立:39 拒绝:0 状态:准备好

还有我的网络统计

[oracle@laborac1 ~]$ netstat -na|grep 1521

tcp 0 0 192.168.113.152:1521 0.0.0.0:* 听

tcp 0 0 192.168.113.150:1521 0.0.0.0:* 听

【讨论】:

  • 这个错误与监听配置完全无关
猜你喜欢
  • 1970-01-01
  • 2012-09-29
  • 2017-10-06
  • 2014-11-23
  • 2014-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多