主页 > 知识库 > 数据库 > Oracle >

plsql连接oracle数据库报ora 12154错误

来源:中国IT实验室 作者:佚名 发表于:2012-11-14 13:39  点击:
plsql连接oracle数据库报ora 12154错误 今天遇到一个问题,使用sqlplus能够连接到远程的数据库,但是使用 plsql却连接不上,报错ORA-12154: TNS: 无法解析指定的连接标识符 解决方法如下: 1.先检查服务器端的监听服务是否打开,如果没有打开请启动其监听 客
plsql连接oracle数据库报ora 12154错误
   
    今天遇到一个问题,使用sqlplus能够连接到远程的数据库,但是使用
   
    plsql却连接不上,报错“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,这时就可以正常登录了。
   
    我是使用第二种方法解决的。

    有帮助
    (2)
    50%
    没帮助
    (2)
    50%