连接pL/sql 报 ORA-12154: TNS: 无法解析指定的连接标识符(原创)
2013-01-16 16:02
549 查看
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:错误代码的其他原因和有其他的解决方法,请跟贴评论我会加以完善这篇文章的!谢谢!
文章转载自:http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece7631013d26c1e5197634b878e482ac3933f94670a071a71e3cc767f4f19d7c0766004b24f5aeffa367423467df7cdc7d50a8eac935838885123716c854111d41fb8cb3732b057872c9eb869e2ad833884afa2c4af2244bd53120bf7e7ff5e1715ba7886102693ac8e38114863b0fa3115e829703eee2557b737ee91317974f0e1ad2a5bb52bc7606180df36a74961a262d7086b2053a13ca67854314490&p=c6759a46d7c01dfc57ee92625641cd31&newp=866fc54ad5c242e449b4cb2d0215d1315c5bc4387ebad01e7c9f8211cc&user=baidu&fm=sc&query=ora%2D12154+%CE%DE%B7%A8%BD%E2%CE%F6%D6%B8%B6%A8%B5%C4%C1%AC%BD%D3%B1%EA%CA%B6%B7%FB&qid=&p1=2
相信作为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:错误代码的其他原因和有其他的解决方法,请跟贴评论我会加以完善这篇文章的!谢谢!
文章转载自:http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece7631013d26c1e5197634b878e482ac3933f94670a071a71e3cc767f4f19d7c0766004b24f5aeffa367423467df7cdc7d50a8eac935838885123716c854111d41fb8cb3732b057872c9eb869e2ad833884afa2c4af2244bd53120bf7e7ff5e1715ba7886102693ac8e38114863b0fa3115e829703eee2557b737ee91317974f0e1ad2a5bb52bc7606180df36a74961a262d7086b2053a13ca67854314490&p=c6759a46d7c01dfc57ee92625641cd31&newp=866fc54ad5c242e449b4cb2d0215d1315c5bc4387ebad01e7c9f8211cc&user=baidu&fm=sc&query=ora%2D12154+%CE%DE%B7%A8%BD%E2%CE%F6%D6%B8%B6%A8%B5%C4%C1%AC%BD%D3%B1%EA%CA%B6%B7%FB&qid=&p1=2
相关文章推荐
- Oracle 数据库PL/SQL ORA -12154 TNS:无法解析指定的连接标识符解决方法
- PL/SQL ORA-12154: TNS: 无法解析指定的连接标识符
- PL/SQL Developer出现“ORA-12154: TNS: 无法解析指定的连接标识符”的状况
- Oracle TnsPing 正确,pl/sql ora-12154无法解析指定的连接标识符的解决方法
- PL/SQL Developer结合oracle精简客户端使用配置错误代码ORA-12154: TNS: 无法解析指定的连接标识符
- 关于PL/SQL配置本地NET报ORA-12154: TNS: 无法解析指定的连接标识符
- PL/SQL Developer ORA-12154: TNS: 无法解析指定的连接标识符
- java内连接和用pl/sql developer登录oracle时出现ORA-12154: TNS: 无法解析指定的连接标识符
- 【JAVA】PL/SQL连接:ORA-12154:TNS:无法解析指定的连接标识符
- PL/SQL Developer出现“ORA-12154: TNS: 无法解析指定的连接标识符”的状况
- PL/SQL Developer 连接数据库出现“ORA-12154: TNS: 无法解析指定的连接标识符”错误
- PL/SQL Developer 连接数据库出现“ORA-12154: TNS: 无法解析指定的连接标识符”错误
- PL/SQL Developer ORA-12154: TNS: 无法解析指定的连接标识符
- PL/SQL Developer ORA-12154: TNS: 无法解析指定的连接标识符
- PL/SQL 不能登录,提示错误:ora-12154:tns:无法解析指定的连接标识符
- 登录PL/SQL Developer报异常:ORA-12154: TNS: 无法解析指定的连接标识符
- PL/SQL 登录到数据库配置- ORA-12154:TNS:无法解析指定的连接标识符
- CMD命令窗口登陆Oracle数据库提示ORA-12560: TNS: 协议适配器错误问题,PL/SQL登陆提示ORA-12154:TNS无法解析指定的连接标识符
- 【解决方法】win7 x64 vs中sql语句连接 ora-12154:tns:无法解析指定的连接标识符
- 关于win7 x64 连接oracle 客户端 VS2010调试 提示“ORA-12154: TNS: 无法解析指定的连接标识符 ” 原创 2013年04月13日 12:50:56 标签:Oracle