【问题标题】:tns not resolving correctly through webservicetns 无法通过 web 服务正确解析
【发布时间】:2009-09-28 13:14:50
【问题描述】:
我知道这里已经有一些类似的问题,但我找不到与我的问题相匹配的问题,所以恐怕我不得不问一个新问题。
我在服务器上运行了一个 web 服务,它抛出 ORA-12154: TNS:could not resolve the connect identifier specified" 错误。但是,当我登录到上述服务器时,我能够成功地 tnsping 条目,并且通过 sqlplus 连接到它,而不是通过 web 服务。
如果有人对要寻找的东西有任何建议,我将不胜感激。
干杯
【问题讨论】:
标签:
oracle
web-services
tnsnames
tns
【解决方案1】:
其他需要注意的事项包括:
- 如果您使用的是服务名称而不是 SID,您是否指定了整个服务名称?
- 如果您使用的是 ORACLE_SID 环境变量,请检查大小写(mydb vs MYDB)
- 检查 sqlnet.log 文件
- 如果您使用的是用户名/密码@SID 连接字符串,如果密码包含特殊字符(如 @ 符号),您可能需要引用密码。
【解决方案2】:
webservice 找不到tnsnames.ora 这通常意味着你在启动进程时没有正确设置Oracle的环境。这通常意味着您没有在启动它的 shell 脚本中获取 oraenv.sh。
【解决方案3】:
所以您的交互式登录有效 - 您的交互式登录和运行您的网络服务的用户有什么不同?
他们是同一个用户吗?如果没有,那么您将需要更新一些配置,以使 Oracle 客户端文件可用于 Web 服务。
操作系统、Oracle 版本等详细信息总是有帮助的。