windows server 2003 64位下32位程序无法通过oracle64客户端连接数据库

        同事在 windows 2003 server 64bit 服务器上安装了公司的应用程序,安装了32位的 oracle客户端,可以连接远程数据库,但是无法通过另外的 Ado, OLEDB 方式连接数据库,测试了oracle 10g 64位 client,发现应用程序通过注册表根本不读取64位的oracle,而是读取的原来的32位的路径和dll等。最后折腾了N久,在几台服务器和虚拟机, windows 2003 server 64bit  Relase 2 等测试得出结论: 

1、32位的应用程序比如 pb,使用64位 oracle 10g 客户端 连接数据库会报错,OCI.DLL等问题。 

2、32位程序通过 注册表下的重定向 oracle 转到 Wow6432node 这个键下的项目oracle 32的客户端才能正常连接,换句话说就是必须在64位 windows 2003 server R2 下安装 32位的 oracle client 才能连接。 

3、如果通过OLEDB ADO 连接肯定是无法连接数据库的,不管是32位还是64位的oracle客户端。 

4、尝试安装  oracle 9i 64位客户端, 发现不对,只适合64位的 安腾 CPU, 不适合 至强 cpu.白耗费时间下载,空欢喜一场。 

特此记录. 

 如果有人在64 win2003 通过 64位 oracle客户端 连接数据库或 Ado,OLE 连接数据库成功,不吝赐教。3Q

 

另外:

9i 没有 FOR windows 2003 x86 64版本

9I 只有 windows 2003  64 安腾版

10G才有FOR windows 2003 x86 64版本

 

如下是 9i 64 的系统要求:

Oracle9i 

Database and Client Release Notes 

 

Release 2 (9.2.0.2.1) for 64-Bit Windows 

 

April 2003 

 

Part No. B10694-01 

 

The information in these Release Notes 

 

System Requirements

  

Component Requirement 

你可能感兴趣的:(网络摘抄笔记)