如何在窗口7 64位上运行使用Oracle 10g客户端的应用程序?

时间:2014-04-01 09:12:34

标签: oracle windows-7-x64

我收到错误“[Oracle] [ODBC] [Ora] ORA- 12154:TNS:无法解析指定的连接标识符。”当我尝试使用第三方软件连接到远程数据库时。我使用的是Windows 7 64操作系统和Oracle 10g 32位客户端。 我已经尝试了stackoverflow上给出的所有解决方案,但无法解决以下链接上的问题。

Ora 12154 error

ODP.NET ORA-12154 TNS error only when run as service

Oracle (0x80004005)ORA-12154: TNS:could not resolve the connect identifier

ORA-12154 could not resolve the connect identifier specified

更新

根据以下Oracle链接,需要安装Oracle 10.2.0.5补丁以在Windows 7上运行。请告知我在哪里可以找到此补丁,因为无法从Oracle网站免费下载。

http://docs.oracle.com/cd/B19306_01/relnotes.102/b14264/toc.htm

更新2:

我发现另一个link表示我需要拥有与Oracle Client相同版本的ODBC管理器。因此,现在总结为我需要Oracle客户端和ODBC管理器的10.0.2.5版本。但我发现我的计算机中有两个不同版本的ODBC管理器。一个位于C:\Windows\System32,另一个位于C:\Windows\SysWOW64。经过一些谷歌搜索后,我才知道WOW(Windows on Windows)用于在64位Windows操作系统中运行32位应用程序。当我通过System32文件夹中的ODBC管理器测试与数据库的连接时,它会连接但是当我尝试通过应用程序连接到同一个数据库时,我收到以下错误: [Microsoft][ODBC Driver Manager]Driver's SQLAllocHandle on SQL_HANDLE_ENV failed. 我的系统上的应用程序是否可能尝试通过无法正常工作的ODBC管理器(在SysWOW64文件夹内)连接到数据库? 请告诉我如何解决这个问题,以及是否有一些我可能缺少的信息。

1 个答案:

答案 0 :(得分:1)

在Oracle 10.2.0.3.0中进行以下更改,并在这些更改后安装

从10203_vista_w2k8_x86_production_client.zip文件中提取Oracle客户端10.2.0.3.0安装程序,并进行如下所示的更改。

从客户端\ Disk1 \ stage \ prereq \ client和client \ Disk1 \ stage \ prereq \ client_prereqs \ client位置编辑refhost.xml,并在CERTIFIED_SYSTEMS标记内添加以下行。

<!--Microsoft Windows 7-->
<OPERATING_SYSTEM>
<VERSION VALUE="6.1"/></OPERATING_SYSTEM>
<!--Microsoft Windows 7-->
<OPERATING_SYSTEM>
<VERSION VALUE="6.0"/>
</OPERATING_SYSTEM>
<!--Microsoft Windows 7-->
<OPERATING_SYSTEM>
<VERSION VALUE="6.2"/>
</OPERATING_SYSTEM>

编辑oraparam.ini文件,并在Windows参数的文件中添加以下部分(6.0,6.1,6.2)。

 Windows=5.0,5.1,5.2,6.0,6.1,6.2