同事在 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