sql plus错误提示 ora-12154:tns:无法解析指定的连接标识符

1.在登陆sql plus时老是出现错误提示 ora-12154:tns:无法解析指定的连接标识符

 

pl/sql 每当oracle client中service name发生变化,都会按照client安装目录下最新的tnsnames.ora,去作为它的读取文件;如果该文件在卸载oracle client后被手工删除或手工改动过后,未在oracle client中修改;则会报“ORA-12514:tns:无法解析指定的连接标识符”错误。

 

解决方法:

 

1、用tnsping <service_name>检测 plSQL登陆时database(数据库)别名是否可正确解析,如报“TNS-03505:无法解析名称”,则此database别名有冲突,需更改。

 

2、手工改动tnsnames.ora后,在oracle client中修改主机名(“对象”--“将数据库添加到树”--“从本地的……”,然后把错误主机名删除或从树中移除)

 

3、重新打开plSQL,用正确的database别名登陆,即恢复正常

 

4、如仍有问题,不登陆进入plSQL界面,进入"tools”--"Preferences"--"Oracle"--"Connection",把"home”(oracle主目录名)里的数据清空,应用后,重新启动plSQL即可。

 

附录:在做以上更改后oracle自带的sqlPLUS,可能会出现不能正常登陆远程服务器的情况;因为其访问的是database下的tnsnames.ora文件,目录与client的不一样,默认为 X(盘符):\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora

 

解决方法:只需将client下tnsnames.ora中定义的主机字符串(service_name)的命令行复制到database 下的tnsnames.ora内,然后保存就可以了。

 

2.在登陆sql plus时老是出现错误提示 ora-12154:tns:无法解析指定的连接标识符

我的机器中安装了Oracle9i的完整服务器端,并且同时还安装了一个Oracle10g的客户端,这样在我的机器上相当于同时有两个Oracle Home。之前连接的时候,PLSQL Developer默认使用了10g的Home
所以连接不上。
PLSQL Developer中修改Oracle Home设置方法:
提示输入用户名密码是,取消,这样进入PLSQL Developer主界面,菜单Tools-Preferences,在设置窗口中,选择Oracle-Connection,对应设置窗口中,找到Oracle Home,选择OraHome92,保存设置,
然后重新启动PLSQL Developer,这时就可以正常登录了。
当然如果需要重新使用10g的数据库的本地Net服务,就需要再重新改回来OraClient10g_home。

 

posted @ 2013-03-20 13:28  jay_chou  阅读(3588)  评论(0编辑  收藏  举报