在已安装64位Oracle数据库服务器的Windows Server上安装Oracle 32位客户端

Bee*_*erC 8 database oracle client 32-bit

我在Windows 2008 R2上安装了64位Oracle数据库服务器(11.2.0.3),当然,它会自动安装64位客户端.我必须在32位的服务器上安装一个应用程序,并且需要32位Oracle客户端.(不要问 - 我无法安装此应用程序的64位版本,它不能与64位客户端一起使用,我无法在另一台服务器上安装它.)

现在我尝试将32位客户端安装到不同的物理文件夹中,并在安装时为Oracle Base和Software Location选择了不同的值,并且安装得很好.它将32位客户端安装的BIN文件夹放在PATH statemtn的头部.

但是,当我尝试使用32位版本运行"SQLplus系统/系统"时,它给了我"ORA-12560:TNS:协议适配器错误".当我使用64位sqlplus.exe进入文件夹并运行它(直接而不是通过PATH)时,"系统/系统"凭据工作正常.

我将TNSNames文件夹从Oracle Server的NETWORK/admin文件夹复制到Oracle Client的NETWORK/admin文件夹,然后重新启动服务器.结果相同.

这是我对Oracle的故障排除知识的范围.

如何让32位客户端在与64位Oracle Server相同的服务器上运行?我知道在linux/Unix中,你只需将lib32文件夹放入64位客户端文件夹并设置几个环境变量,但我很确定它在Windows中并不那么简单.

如果有办法做到这一点,请回答您的描述,因为我需要逐步说明.

提前致谢.

Wer*_*eit 24

以下是如何在一台计算机上安装32位和64位Oracle客户端的说明.按照指示,它应该工作.

假设:调用Oracle Home OraClient11g_home1,客户端版本为11gR2

  • 例如,下载并安装Oracle x86客户端 C:\Oracle\11.2\Client_x86

  • 将Oracle x64 Client下载并安装到不同的文件夹中,例如 C:\Oracle\11.2\Client_x64

  • 打开命令行工具,转到文件夹%WINDIR%\ System32,通常C:\Windows\System32创建一个指向ora112文件夹的符号链接C:\Oracle\11.2\Client_x64(参见下面的命令部分)

  • 通常更改为文件夹%WINDIR%\ SysWOW64 C:\Windows\SysWOW64并创建指向ora112文件夹的符号链接C:\Oracle\11.2\Client_x86(参见下文)

  • 修改PATH环境变量,更换喜欢的所有条目C:\Oracle\11.2\Client_x86,并C:\Oracle\11.2\Client_x64通过C:\Windows\System32\ora112,相应的其\bin子文件夹.注意:C:\Windows\SysWOW64\ora112不得在PATH环境中.

  • 如果需要,请将ORACLE_HOME环境变量设置为C:\Windows\System32\ora112

  • 打开注册表编辑器.将注册表值设置HKLM\Software\ORACLE\KEY_OraClient11g_home1\ORACLE_HOMEC:\Windows\System32\ora112.使用C:\Oracle\11.2\Client_x64也应该工作.

  • 将注册表值设置HKLM\Software\Wow6432Node\ORACLE\KEY_OraClient11g_home1\ORACLE_HOMEC:\Windows\System32\ora112(不C:\Windows\SysWOW64\ora112).使用C:\Oracle\11.2\Client_x86也应该工作.

  • 你完成了!现在,您可以将x86和x64 Oracle客户端无缝连接在一起,即x86应用程序将加载x86库,x64应用程序将加载x64库,而无需对系统进行任何进一步修改.

  • 例如,将TNS_ADMIN环境变量(TNS_ADMIN在Registry中的resp.条目)设置为公共位置可能是一个明智的想法TNS_ADMIN=C:\Oracle\Common\network\admin

用于创建符号链接的命令:

cd C:\Windows\System32 mklink /d ora112 C:\Oracle\11.2\Client_x64 cd C:\Windows\SysWOW64 mklink /d ora112 C:\Oracle\11.2\Client_x86

笔记:

两个符号链接必须具有相同的名称,例如ora112.

尽管其名称文件夹C:\Windows\System32包含x64库,但C:\Windows\SysWOW64包含x86(32位)库.不要混淆.