zoukankan      html  css  js  c++  java
  • PL/SQL报错:无法解析指定的连接标识符

    PL/SQL报错:无法解析指定的连接标识符

    在安装oracle的时候PL/SQL报错:“ORA-12154: TNS:无法解析指定的连接标识符”,在网上找了很多资料,然后问题解决。其中下面的文章分析的过程很值得学习,特地转载过来时刻告诫自己全局观的重要性!!!

    下面是引用正文

     

    接着上次的话题,在64位win7上装了32位oracle10g 以后又出现了新的问题:

    在使用oracle自带的sqlplus连接本机或者远程的oracle实例均能成功过,但使用 PL/SQL Developer (我装的是7.1版本) 连接任何一个实例在登录时均报“ORA-12154: TNS:无法解析指定的连接标识符”错误。

    冷静,先分析原因,既然sqlplus已经能够连接,说明oracle的安装(至少客户端的安装)是正常的,TNS的配置是正确的。问题应该出在PL/SQL Developer 自身。考虑到本次安装oracle的过程中有诺干次安装失败且变换过oracle home,是否是注册表中的信息有写垃圾未清理?!进入 PL/SQL Developer  的 preferences中发现可以设定oracle home。该选项为空是自动选择,也可以手工填入路径。但是设置后没有效果。之后又检查了注册表、oracle设置均无异常。

    无奈之下选择了重装PL/SQL Developer 。运行安装程序以后弹出一个警告框,这次仔细的看了一下,大概意思是安装目录中含有特殊字符可能导致oracle无法连接。该提示窗口按“确认”按钮后依然会继续安装。恍然大悟啊,64位win7会把32位应用程序默认的安装到Program Files (x86)目录下,那两个括号可能让oracle郁闷了。改变安装路径为一个比较“大众化”的路径,再次进行数据库连接,一切问题都解决了。

    经验总结:以后打死也不往默认的32位 program files目录下装东西了。

     

     思想上移

    上网查了好久才找到这个答案,起初一直是认为oracle安装的问题,和文章的作者一样,开始的时候也是找了很多资料,上网百度了好一阵子。真要从细节方面说的话出现这个问题的原因还是不理解win7的那个programs files(X86)文件夹存在的意义。网上能找到的就只有关于syswow64的介绍,具体的文件夹的作用,以及不安装到相应的文件夹下会出现什么别的问题还有待考察。如果说是为了区分32为和64位程序的话那么如果32位程序不小心安装到别的目录下那么就不应该可以用啊,但是事实证明还是可以正常使用,所以大胆猜测,这个文件夹仅仅用于区分,在程序运行的时候操作系统会自己判断。

    文章的作者还是很有水平的,遇到了问题没有一头扎进去而是仔细的分析,将大局把握住了。弄清楚自己所处的环境(64位win7)然后逐步向细节分析(oracle安装,PL/SQL安装,以及他们的安装路径等等细节),最终问题解决。宏观的把握住了,细节方面的都不是大问题,只需要稍微调整就可以。以后遇到问题也应该这样分析,把自己的所处的大环境搞清楚,然后再去分析问题。

    谨记!谨记!!

  • 相关阅读:
    Metadata, reflection and attribute
    [Tip VS] One Reason Causes VS IDE Slow To Work
    [转载]开源界的5大开源许可协议详解
    [Cursor Bitmap]Programatically Create Bitmap For Cursor
    对UML多了很多理解
    关于Task Breakdown / Plan & Project Prototyping
    第11章 界面设计模式
    第4章 O/R Mapping的一般做法
    第3章 数据和对象
    第8章 事务处理
  • 原文地址:https://www.cnblogs.com/xunmengyoufeng/p/2732506.html
Copyright © 2011-2022 走看看