3

我们有一个在以下环境中运行的 ASP.net Web 应用程序 -

现有环境

操作系统:Windows 2003

框架:.NET 框架:2.0

IIS:6.0

数据库:Oracle 10g

我们希望将其升级到以下环境

当前环境

操作系统:Windows 2008 R2 x64

框架:.NET 框架:2.0

IIS:7.0

数据库:Oracle 11g

这样做时,我们面临以下问题

Windows Server 2008 R2 64 位上的 ODBC 连接问题

无法从 Windows Server 2008 R2 中的 ASP.net Web 应用程序建立 ODBC 连接。

应用程序引发错误: 错误 [IM002] [Microsoft][ODBC 驱动程序管理器] 未找到数据源名称且未指定默认驱动程序。

连接字符串:

<add name="ConnectionString" connectionString="Driver=Oracle in XE;Dsn=winerenew;uid=winere;pwd=winere;dbq=XE;dba=W;apa=T;exc=F;fen=T;qto=T;frc=10;fdl=10;lob=T;rst=T;btd=F;bam=IfAllSuccessful;num=NLS;dpm=F;mts=T;mdi=F;csr=F;fwc=F;fbs=64000;tlo=O" providerName="System.Data.Odbc"/>

应用程序在 Windows 2008 x86 中完美运行。

我们尝试了以下方法来解决 Windows Server 2008 x64 中的此问题,

1) 在应用程序池中启用 32 位应用程序 (IIS 7)

2) 使用以下命令执行 ODBC 32 位驱动程序 C:\Windows\SysWOW64\odbcad32.exe

3) 安装 oracle 64 位 ODBC 驱动程序。

上述方法似乎不能解决这个问题。谁能告诉我它背后的问题以及解决这个问题的解决方案?

4

1 回答 1

-1

如果您有可用的 DNS,那么您可以启用从odbcad32.exe. 然后从任何 ODBC 编辑器/工具测试 Oracle 连接(我经常使用使用odbc模块的简单 Python 程序对其进行测试)。这样的跟踪将创建一个成功尝试连接到数据库的文件。连接do数据库关闭程序后,停止跟踪并重命名跟踪文件。

现在你必须为你的应用程序创建这样的跟踪:启用跟踪,启动你的程序,尝试连接数据库,关闭程序,停止跟踪。您有两个文件尝试通过 ODBC 连接到数据库:一个成功,一个失败。比较它们。

于 2012-08-27T05:14:09.183 回答