我已经安装了Oracle 11g,现在当我尝试连接PL-SQL Developer时出现以下错误
ORA-12154:TNS:无法解决问题 连接标识符指定
如何查看指定的'标识符'?
我的服务中现在有两个TNS监听器,但只有11g可以启动,因为9i目录不再存在。
任何人都知道解决方案吗?
我的 tnsnames.ora
ORCL =(DESCRIPTION = (ADDRESS =(PROTOCOL = TCP)(HOST = XXX_L07082.xxx-batt.local)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ))
我的 listner.ora
LISTENER =(DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS =(PROTOCOL = IPC)(KEY = EXTPROC1521)) (ADDRESS =(PROTOCOL = TCP)(HOST = XXX_L07082.xxx-batt.local)(PORT = 1521)) ))
SQLNET.ORA
SQLNET.AUTHENTICATION_SERVICES =(NTS)
NAMES.DIRECTORY_PATH =(TNSNAMES, EZCONNECT)
TNSPING ORCL
尝试联系(DESCRIPTION = (ADDRESS =(PROTOCOL = TCP)(HOST = XXX_L070 82.xxx-batt.local)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED) (SERVICE_N AME = orcl)))OK(40毫秒)
答案 0 :(得分:1)
您是否同时安装了多个Oracle客户端?
不幸的是,如果您安装多个版本的Oracle客户端,它们有时(可能经常?)不能很好地协同工作。可能发生的是,Oracle客户端的两个版本之间的某些路径混合在一起。我会删除旧的。
如果您输入内容会发生什么:tnsping [name]
也许tnsping会给你一些更有用的信息。
在Windows中,我之前通过编辑PATH环境变量修复了这些问题,并删除了对旧Oracle客户端的所有引用。您可以通过转到计算机 - >来编辑PATH环境变量。属性 - >高级系统设置(仅限Vista和7) - >高级(标签) - >环境变量...我通常会复制出路径并在记事本中对其进行编辑,然后将已编辑的路径复制回来。
如果这不起作用并且旧客户端的目录结构存在,那么我会将tnsnames.ora复制到旧客户端的Network / Admin目录中,看看是否有效。