【问题标题】:ORA-12154: TNS:could not resolve the connect identifier specifiedORA-12154: TNS: 无法解析指定的连接标识符
【发布时间】:2011-08-31 03:33:53
【问题描述】:

当我使用现有的 Oracle 10g 客户端版本安装服务器版本时,问题就开始了。

背景:安装了 Oracle 客户端版本 10g(位于 c:/oracle)以连接到位于其他国家/地区的数据库。所以我们可以只连接到它并限制访问它。

路径 => c:/oracle/ora_client/network/admin/listener.ora

为了以管理员身份工作,我在 Windows 上的同一位置 c:/oracle 安装了 10g 服务器。我现在可以作为服务器工作了。

路径 => c:/oracle/product/db_1/network/admin/listener.ora

但是当我尝试连接我安装的应用程序以将连接设置为客户端(到位于其他国家/地区的服务器)时出现问题,它失败并抛出错误 ORA-12154。

那么,我是否必须卸载我的服务器版本(以防万一可能由于存在两个 Oracle 数据库而出现混乱)?

我该如何解决?可能的原因是什么?请指教!

【问题讨论】:

    标签: oracle oracle10g database-connection ora-12154


    【解决方案1】:

    当您安装服务器版本时,它会更新环境变量以指向服务器安装而不是客户端安装。 TNS 别名的定义在 tnsnames.ora 中完成,没有 listener.ora。因此,您必须将已经存在的条目从 c:/oracle/ora_client/network/admin/tnsnames.ora 复制到 c:/oracle/product/db_1/network/admin/tnsnames.ora。请注意遵守 tnsnames.ora 格式。

    【讨论】:

    • 太棒了! :) 谢谢 :) 它有效。就在最后一个问题,在哪里检查这些环境变量?我的意思是客户端和服务器的路径是什么?
    • 我假设这是 Windows。在安装oracle的用户下,检查path和oracle*变量的设置
    【解决方案2】:

    我今天遇到了这个错误。在配置监听器时花了很多时间检查我做错了什么。即使在我使用 netca 配置它之后,我仍然遇到同样的错误:

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

    原因似乎是包含“@”字符的 sys 密码错误。

    例如当你如下连接时:

    $sqlplus sys as sysdba
    

    回复是

    SQL*Plus:2015 年 5 月 27 日星期三 08:24:19 发布 11.2.0.4.0 生产

    版权所有 (c) 1982、2013、甲骨文。保留所有权利。

    输入密码:ple@se 错误:ORA-12154:TNS:无法解析 指定连接标识符

    就是这样。非常简单的案例。

    【讨论】:

    • 说真的,wtf。为什么他们在设置密码时不只是禁止在密码中使用“@”? -.-
    猜你喜欢
    • 2014-11-23
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 2016-11-25
    • 1970-01-01
    相关资源
    最近更新 更多