如何知道已安装的Oracle客户端是32位还是64位?
操作系统:Windows 2008 Server R2
Oracle客户端:11.2
非常感谢
在Windows中find这个简单的方法是从Oracle家庭的bin目录运行SQLPlus,然后检查任务pipe理器。 如果它是32位版本的SQLPlus,那么您将在“进程”选项卡上看到如下所示的进程:
sqlplus.exe *32
如果它是64位的,则过程如下所示:
sqlplus.exe
转到%ORACLE_HOME%\inventory\ContentsXML
文件夹并打开comps.xml
文件
在第二个屏幕上查找<DEP_LIST>。
如果下面的行有
PLAT="NT_AMD64"
那么这个Oracle Home是64位的。 PLAT="NT_X86"
然后 – 32位。
您可能安装了32位和64位Oracle Homes。
有一件超级简单的事情对我来说很好,就是在cmd提示符下执行一个TNSPing命令:
TNS Ping Utility for 32-bit Windows: Version 11.2.0.3.0 - Production on 13-MAR-2015 16:35:32
在Linux中:
1)findsqlplus所在的位置,
[oracle@LINUX db_1]$ `which sqlplus` /app/oracle/product/11.2.0/db_1/bin/sqlplus
2)确定文件types,
[oracle @ LINUX db_1] $ file /app/oracle/product/11.2.0/db_1/bin/sqlplus
/app/oracle/product/11.2.0/db_1/bin/sqlplus:ELF 64位LSB可执行文件,x86-64,版本1(SYSV),dynamic链接(使用共享库)。 对于GNU / Linux 2.6.18,没有剥离。
以上关于lib和lib32文件夹的链接都不适用于Oracle Client 11.2.0但是我在OTN社区中发现了这一点:
至于检查客户端安装以确定它是32位还是64位,你可以检查registry,一个32位的home将位于HKLM> Software> WOW6432Node> Oracle,而一个64位的home位于HKLM >软件>甲骨文。
从这里拿下来, 这里没有提到:
如果Oracle客户端是32位,它将包含一个“lib”文件夹; 但如果它是一个64位Oracle客户端,它将同时具有“lib”和“lib32”文件夹。
另外,从Oracle 11.2.0.1开始,64位客户端版本和32位Oracle客户端分开发货,并且有一个$ ORACLE_HOME / lib64目录。
$ ORACLE_HOME / lib / ==> 32位$ ORACLE_HOME / lib64 ==> 64位
要么
$ ORACLE_HOME / lib / ==> 64位$ ORACLE_HOME / lib32 ==> 32位
对于Oracle 12.1 Windows客户端来说,查看TNSPING命令的输出似乎是可行的:
在64位操作系统上安装了32位:
C:> TNSPING
适用于32位Windows的TNS Ping实用程序:版本12.1.0.2.0 – 在02-FEB-2上制作016 15:44:37
版权所有(c)1997年,2014年,甲骨文。 版权所有。
在64位操作系统上安装64位:
d:> TNSPING
适用于64位Windows的TNS Ping实用程序:版本12.1.0.1.0 – 在02-FEB-2上生产016 16:00:23
版权所有(c)1997年,2013年,甲骨文。 版权所有。
在64位系统上:
32位驱动程序: C:\Windows\SysWOW64\odbcad32.exe
64位驱动程序: C:\Windows\System32\odbcad32.exe
转到驱动程序选项卡
版本也显示在那里。