我有一台winxp远程Oracle服务器和一台带有IIS的Windows 7机器。
我将在win7机器上托管一个站点,从我的winxp机器上的Oracle DB获取信息。
然而,当我加载我的网页时,我得到了ORA-12154: TNS:无法解析指定的连接标识符
在我的Tnsname.Ora上我得到了以下内容:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 157.xxx.xx.xxx)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = ORCL.company.net)
)
)
奇怪的是,当我尝试通过WIN7中的sqlplus连接时,我可以通过提供以下凭据来实现:
$ sqlplus MyUser / MyPass @ ORCL
我得到的ConnectionString如下:
有没有人知道可能出现的问题?
连接字符串在我的本地开发机器上运行,其中tnsnames.ora文件看起来几乎相同。
任何帮助将不胜感激!
答案 0 :(得分:3)
您是否尝试过使用直接连接字符串,例如
Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=157.xxx.xx.xxx)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=ORCL.company.net)));User Id=MyUser;Password=MyPass;
答案 1 :(得分:1)
如果将系统环境变量TNS_ADMIN设置为指向tnsnames.ora文件所在的目录,它是否有助于您的Web服务?听起来我的Web服务器正在查看错误的目录,因为它说它无法解析名称。
答案 2 :(得分:1)
Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=157.xxx.xx.xxx)(PORT=1521))
(CONNECT_DATA=(SID=NETBDS)));User Id=MyUser;Password=MyPass;
尝试这种方法怎么样?