ORA-12154: TNS: 无法解析指定的连接标识符 的解决方法

相信作为ORACLE数据库的开发人员没有少碰到“ORA-12154: TNS: 无法解析指定的连接标识符”,今天我也又碰到了类似的情况,将我的解决方法进行小结,希望能对碰到同样问题的友人们提供帮助。

  问题场景描述:ORA-12154: TNS: 无法解析指定的连接标识符”

 SID别名 =   (DESCRIPTION =      (ADDRESS_LIST =        (ADDRESS = (PROTOCOL = TCP)(HOST = SERVER_IP)(PORT = 1521))     )      (CONNECT_DATA =       (SID = SID_NAME)     )   ) 


DBS1 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 9.5.8.166)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )

通过PL/SQL Developer连接dev_db时,报“ORA-12154: TNS: 无法解析指定的连接标识符”。

这个问题以前也碰到过,但解决方法不太一样,因具体的问题不太一样。)     

我将自己知道的一些解决方法说一下:  

1.先检查服务器端的监听服务是否打开,如果没有打开请启动其监听   客户端:tnsping <tns_name>       服务器Linux下:       #>lsnrctl status 查看监听状态      #>lsnrctl start 启动监听  

2.通过Sql Plus连接一下试试,如果Sql Plus连接能成功,那就说明你的tnsnames.ora内容有错误  我的问题就在别名dev_db前面有一个空格,这个可以通过文本编辑器(Edit Plus,UE等)来查看是否有空格,只要有空格那就肯定是不行的,而且如果那段内容是出现在文件的中间的话,将导致该文件里所有相应的连接别名都不成功,如果是在最后面就只有其自身连接别名不能成功,其他连接别名还是能连接成功。(注:我的tnsnames.ora配置了多个数据库实例的连接,所有才有多个连接别名。) 

 3.如果确保你的tnsnames.ora内容没有错误,那请 将%ORACLE_HOME%\product\10.2.0\db_1\NETWORK\ADMIN目录下的所有文件删了,然后重新连接,一般就能解决了。 

 说明一下:那个目录里的文件是在你建立连接的时候动态生成的,不要怕删了会有问题  




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值