ORA-12154_TNS无法解析指定的连接标识符

ORA-12154: TNS: 无法解析指定的连接标识符(原创)

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

问题场景描述:

服务器端版本:oracle 10.2.0.10

客户端版本:oracle 10.2.0.10

客户端开发工具:PL/SQL Developer

通过客户端来连接服务器,其主要文件就是通过客户端的tnsnames.ora来配置,在原文件的基础上增加:

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

例:

dev_db =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.168.10.5)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = ora10)
    )
  )

通过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配置了多个数据库实例的连接,所有才有多个连接别名。)

如:

空格dev_db =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.168.10.5)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = ora10)
    )
  )

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

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

4.进入PLSQL Developer的主界面,在登录界面选择取消即不登录进入主界面,然后选择菜单Tools(工具)-Preferences(首选项),在设置窗口中,选择Oracle-Connection(连接),对应设置窗口中,找到Oracle Home(Oracle主目录),选择你本地所安装客户端的版本,保存设置,然后重新启动PLSQL Developer,这时就可以正常登录了。

如果您还碰有ORA-12154:错误代码的其他原因和有其他的解决方法,请跟贴评论我会加以完善这篇文章的!谢谢!

时间: 2024-12-13 17:12:06

ORA-12154_TNS无法解析指定的连接标识符的相关文章

Oracle11g ora 12154 无法解析指定的连接标识符

编辑listener.ora加上: SID_LIST_LISTENER = (SID_DESC = (GLOBAL_DBNAME = ORCL) (ORACLE_HOME = D:\Oracle\product\11.2.0\dbhome_1) (SID_NAME = ORCL) ) ) Oracle11g ora 12154 无法解析指定的连接标识符

Win7x64中使用PowerDesigner连接Oralce数据库报“[Oracle][ODBC][Ora]ORA-12154:TNS:无法解析指定的连接标识符”错误解决方法

错误描述 操作系统是Win7 x64,Oracle服务端是Oracle11g x64,客户端是Oracle10gR2 x86. 使用PL-SQL Developer连接正常 使用系统ODBC连接正常.这里要注意的是,64位系统默认启动的是64位ODBC数据源管理器,默认指向的是服务端连接,所以需要为Oracle服务端也配置TNS Service Name,否则同样会连接报错.PowerDesigner默认启动的是32位的ODBC数据源管理器,程序路径为“%SystemRoot%\SysWOW64

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

又是这个百无聊赖的问题,虽然问题芝麻点大,却让我们好找啊! 很久没有安装oracle了,今天安装11g的时候,用PLSQL Developer连接时,就出现了这个俗不可耐的问题:ORA-12154 TNS无法解析指定的连接标识符.我自认为安装的时候已经很小心翼翼了,结果还是出了纰漏,于是乎,我抱着不解决问题誓不罢休的决心开始一步步排查问题,功夫不负有心人,最终得以解决. 下面我详细给大家介绍解决问题的思路: 首先搞清楚问题的主体有两个:oracle服务和PLSQL Developer. 一.先排

关于解决Oracle登录:ora-12154:tns:无法解析指定的连接标识符

(注:此文摘自http://www.linuxidc.com/Linux/2012-04/59322.htm) 开始学习Oracle,所以今天就打算把Oracle 10g安装下.安装完后就来进行测试是否能够正常的工作. 在安装的过程中,配置的全局数据库为tmt. 但是使用SQL Plus登陆的时候,用户名:scott,口令为:tiger,主机字符串为:tmt.但是总是登陆不上,报提示 ora-12154tns无法解析指定的连接标识符.百度了下,原来是我的TNSNAMES.ORA文件中并没有tmt

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

问题:ORA-12154:TNS:无法解析指定的连接标识符 截图如下: 我的解决步骤如下: 1)查看监听状态lsnrctl status ,如果没有启动的话,使用lsnrctl start启动 C:\Users\Administrator>lsnrctl status LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 11-8月 -2017 11 8:08 Copyright (c) 1991, 2010, Oracle

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

相信作为ORACLE数据库的开发人员没有少碰到"ORA-12154: TNS: 无法解析指定的连接标识符",今天我也又碰到了类似的情况,将我的解决方法进行小结,希望能对碰到同样问题的友人们提供帮助. 问题场景描述: 服务器端版本:oracle 10.2.0.10 客户端版本:oracle 10.2.0.10 客户端开发工具:PL/SQL Developer 通过客户端来连接服务器,其主要文件就是通过客户端的tnsnames.ora来配置,在原文件的基础上增加: SID别名 =   (D

Oracle几个基础配置问题:ORA-12154: TNS: 无法解析指定的连接标识符、ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务、ORA-12516 TNS监听程序找不到符合协议堆栈要求的可用处理程序

转载地址:http://www.cnblogs.com/zhaoguan_wang/p/5505701.html 问题1:ORA-12154: TNS: 无法解析指定的连接标识符 在一台服务器上部署了Oracle客户端,使用IP/SID的方式访问,老是报ORA-12154错误,而使用tnsnames访问却没有问题,对比了我本机的配置并查阅了一下资料,Easy Connect Naming Method这个东西是Oracle 10g推出的,需要在sqlnet.ora文件中添加EZCONNECT,如

PL/SQL连接远程服务器数据库,出现ORA-12154: TNS: 无法解析指定的连接标识符。

故障环境:上礼拜新装了一台服务器(win server2008r2),并在服务器上安装了ORACLE 11g database.且已经做好监听配置,开通了1521端口. 我又在局域网内另一台pc端装了 oracle 10g 32位 client,客户端进行了tnsname.ORA的配置.装完后cmd下网络可以ping通,tnsping 服务名也可以连通. 于是我再当前PC客户端上装了PL/SQL Developer.进行数据库的管理,输入数据库用户名,密码,和tns服务名后无法正常连通. 出现O

Vs2015 进行调试的时候,显示“ORA-12154: TNS: 无法解析指定的连接标识符”

Vs2015 进行调试的时候,显示“ORA-12154: TNS: 无法解析指定的连接标识符”,总结一下解决方法. 在程序中连接Oracle数据库的方式与其他常用数据库,如:MySql,Sql Server不同,这些数据库可以通过直接指定IP的方式连接,但是Oracle则需要通过Oracle客户端配置网络服务名的方式来连接.否则就会出现“ORA-12154: TNS: 无法解析指定的连接标识符”. 客户端安装后,开始--->Oracle-OraClient11g_home--->Net Man