日期:2014-05-16  浏览次数:20491 次

“无法解析指定的连接标识符” 的一种解决
遇到一种情况。通过plsql devoloper可以很方便的连接到远程的数据库服务器,但在命令行下总是不行,命令及报错如下:
C:\Documents and Settings\llf>exp myname/mypwd@192.168.1.162:1521/orcl file=d:\aa.dmp

Export: Release 10.2.0.1.0 - Production on 星期五 5月 28 16:26:33 2010

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


EXP-00056: 遇到 ORACLE 错误 12154
ORA-12154: TNS: 无法解析指定的连接标识符
EXP-00000: 导出终止失败

这里说明一下,我在本地的tnsnames.ora文件中配置了连接远程数据库的配置
ORCL_162 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.162)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )

最终通过dba同事的指点以下面的命令实现了正确操作:
C:\Documents and Settings\llf>exp myname/mypwd@orcl_162 file=d:\aa.dmp

实际上就是将连接串直接写成了本地配置的服务名。有一个问题,即我最初的写法为什么就不行呢,是不是本地配置了连接串就不能再用完全的连接方式而只能用由服务名简化的方式了呢?