ORA-12514:与两个Oracle客户端没有find消息12514

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

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

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

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

有任何想法吗?

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

有几个可能性的错误:

  1. 最有可能的是tnsnames.ora最终包含一个错误。 从连接工作的其他客户端复制它
  2. 原因可能是在sqlnet.ora中有一些设置会引导客户端出现错误。 也可以从工作客户端复制(如果不在其他地方使用,则将其完全删除)
  3. 原因可能还是tnsnames.ora试图从其他版本的目录中读取。 确保在两个版本中都有相同的tnanames.ora和sqlnet.ora … \ network \ admin -dir。
  4. 一个罕见的变化是,你在你的registry中设置了TNS_ADMIN,并且它指向比默认的… \ network \ admin更多的地方。