2011-08-08 101 views
3

我在Windows XP计算机上安装了Oracle Client v。11.2.0.1并设置了TNS_ADMIN和ORACLE_HOME环境变量。tnsping失败,但可以通过sqlplus连接到Oracle数据库

用sqlplus连接到通过TNS别名远程数据库正常工作:

sqlplus username/[email protected] 

但TNSPING以相同的别名导致以下错误:

P:\>tnsping ALIAS 

TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 07-AUG-2 
011 18:20:08 

Copyright (c) 1997, 2010, Oracle. All rights reserved. 

Message 3511 not found; No message file for product=NETWORK, facility=TNSMessage 
3512 not found; No message file for product=NETWORK, facility=TNSMessage 3513 n 
ot found; No message file for product=NETWORK, facility=TNSMessage 3509 not foun 
d; No message file for product=NETWORK, facility=TNS 

对于类似的问题(即堆栈溢出here),tnsping至少能够解析来自别名的连接字符串。在这种情况下并非如此。这导致我相信某些环境变量缺失或指向错误的位置。任何建议,将不胜感激。

回答

0

问题是您没有正确安装产品。它找不到它的消息文件,因此你没有看到结果。 TNS-3509意味着tnsping成功。

+0

你介意“找不到它的消息文件”吗? 我运行Oracle通用安装程序,并且没有错误地完成。 “未正确安装产品”似乎是Oracle支持论坛对各种问题的常见回应。我宁愿不再进行整个过程,以免它第二次实际工作。 –

+0

消息文件存储在rdbms/mesg中。我假设你没有正确设置你的路径。 – steve

1

我曾尝试自定义安装ODBC驱动程序和SQL Developer,并遇到此问题。 SQL Developer将连接正常,但tnsping会产生3511错误。复制另一个安装的mesg文件会产生3505错误。

安装管理员选项为我工作。