ORA-12514:两个 Oracle 客户端均未找到消息 12514

ORA-12514:两个 Oracle 客户端均未找到消息 12514

用户尝试通过 Oracle Forms 应用程序连接到 Oracle 数据库时收到以下错误。当我尝试使用 sqlplus 从他们的计算机连接时,我也收到同样的错误。

ORA-12514: Message 12514 not found; product=RDBMS73; facility=ORA

机器上有两个 Oracle 客户端,一个用于 Oracle 8,另一个用于 Oracle 10g。表单运行时安装在 Oracle 8 客户端的路径中。我已将路径设置为仅包含 Oracle 8,并将 ORACLE_HOME 设置为 Oracle 8 的主目录。tnsnames.ora 中的连接详细信息(两者)都是正确的。

当我尝试 tnsping 时,成功返回。

有任何想法吗?

答案1

您的错误是:“ORA-12514:TNS:监听器当前不知道连接描述符中请求的服务”。实际上,这意味着客户端能够连接服务器,但服务器的监听器不知道您尝试使用的 SID。您会收到一条不同的消息,告知客户端无法找到实际的错误文本。

出现错误的可能性有以下几种:

  1. 很可能 tnsnames.ora 毕竟包含错误。从其他连接正常的客户端复制它
  2. 原因也可能是 sqlnet.ora 中的某些设置“引导”客户端出现错误行为。从正常工作的客户端复制该设置(如果未在其他地方使用,则将其完全删除)
  3. 原因也可能是尝试从其他版本的目录中读取 tnsnames.ora。确保两个版本的 ...\network\admin -dir 中的 tnanames.ora 和 sqlnet.ora 相同。
  4. 一个罕见的变化是您在注册表中设置了 TNS_ADMIN,并且它指向除默认值 ...\network\admin 之外的其他位置。

相关内容