55

OS: Windows 2008 Server R2

Oracle Client: 11.2

Many Thanks

aiyagaze
  • 884
  • 2
  • 8
  • 14

9 Answers9

81

A simple way to find this out in Windows is to run SQLPlus from your Oracle homes's bin directory and then check Task Manager. If it is a 32-bit version of SQLPlus, you'll see a process on the Processes tab that looks like this:

sqlplus.exe *32

If it is 64-bit, the process will look like this:

sqlplus.exe
JoshL
  • 10,737
  • 11
  • 55
  • 61
  • does the same hold true for windows server 2012? I see it running in task manager as sqlplus.exe, and description is "Oracle SQL*PLUS". – n00b Jan 22 '15 at 18:19
  • This method only works with Task Manager. If you use Process Explorer it shows sqlplus.exe for a 32 bit client, however you can display the Image Type column, and this will indicate 64 or 32 bits. – shonky linux user Mar 25 '15 at 02:18
  • 1
    Good advice. Although task manager wouldn't show "sqlplus.exe *32" on a 32-bit OS, it would be just "sqlplus.exe" ;) – Tagar Jun 16 '15 at 16:41
  • @n00b For server 2012, "(32 bit)" would be shown after the application name. In your case, it is 64bit. – Ivan Chau Oct 07 '16 at 02:50
  • 2
    I couldnt see this '*32' part in WIndows 10 Task Manager. I went into Task Manager area and right-clicked on the table area there. and selected 'Select Columns' and choose 'Platform' and that seemed to display whether it is a 64 or 32 bit prog – armyofda12mnkeys Nov 15 '18 at 19:10
45

Go to %ORACLE_HOME%\inventory\ContentsXML folder and open comps.xml file

Look for <DEP_LIST> on ~second screen.
If following lines have

  • PLAT="NT_AMD64" then this Oracle Home is 64 bit.
  • PLAT="NT_X86" then - 32 bit.

    You may have both 32-bit and 64-bit Oracle Homes installed.
  • Tagar
    • 13,911
    • 6
    • 95
    • 110
    • 2
      Useful if you have more than 1 Oracle client! – S. Dixon May 27 '15 at 20:28
    • 1
      This helped me to look for the list. I've now got another question on this: How do I determine which is a client/something else? "oracle.sysman.agent" VER="11.1.0.1.0" PLAT="NT_AMD64" "oracle.sysman.agent.gc" VER="11.1.0.1.0" PLAT="NT_AMD64" "oracle.rdbms.install.common" VER="10.2.0.1.0" PLAT="NT_AMD64" "oracle.swd.oui" VER="10.2.0.1.0" PLAT="NT_AMD64" /> "oracle.bali.share" VER="11.1.1.2.0" PLAT="NT_AMD64" "oracle.sysman.plugin.ai.main.agent" VER="11.1.0.2.0" PLAT="NT_AMD64" "oracle.dms" VER="10.1.2.1.0" PLAT="NT_AMD64" NOTE: I'm green on this matter. – geynske006 Jun 16 '15 at 09:19
    • @geynske006 not sure if I am in time for this - but since they are all AMD64, you should be fine, just means you have 32-bit across the board. – Donald Li Nov 08 '21 at 23:45
    12

    One thing that was super easy and worked well for me was doing a TNSPing from a cmd prompt:

    TNS Ping Utility for 32-bit Windows: Version 11.2.0.3.0 - Production on 13-MAR-2015 16:35:32
    
    Mark Bowytz
    • 1,322
    • 1
    • 10
    • 14
    7

    In Linux:

    1) find where is sqlplus located,

    [oracle@LINUX db_1]$ `which sqlplus`
    /app/oracle/product/11.2.0/db_1/bin/sqlplus
    

    2) Determine the file type,

    [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-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs). For GNU/Linux 2.6.18, not stripped.

    Vinod VT
    • 6,946
    • 11
    • 51
    • 75
    user3068602
    • 79
    • 1
    • 1
    5

    None of the links above about lib and lib32 folder worked for me with Oracle Client 11.2.0 But I found this on the OTN community:

    As far as inspecting a client install to try to tell if it's 32 bit or 64 bit, you can check the registry, a 32 bit home will be located in HKLM>Software>WOW6432Node>Oracle, whereas a 64 bit home will be in HKLM>Software>Oracle.

    Jon Heller
    • 34,999
    • 6
    • 74
    • 132
    shadi
    • 358
    • 6
    • 15
    2

    The following, taken from here, was not mentioned here:

    If the Oracle Client is 32 bit, it will contain a "lib" folder; but if it is a 64 bit Oracle Client it will have both "lib" and "lib32" folders.

    Also, starting in Oracle 11.2.0.1, the client version for 64-bit and the Oracle client for 32-bit are shipped separately, and there is an $ORACLE_HOME/lib64 directory.

    $ORACLE_HOME/lib/ ==> 32 bit $ORACLE_HOME/lib64 ==> 64 bit

    Or

    $ORACLE_HOME/lib/ ==> 64 bit $ORACLE_HOME/lib32 ==> 32 bit

    Veverke
    • 9,208
    • 4
    • 51
    • 95
    2

    For the Oracle 12.1 windows client, looking at the output from the TNSPING command seems to work:

    With 32 bit installed on 64 bit OS:

    C:>tnsping

    TNS Ping Utility for 32-bit Windows: Version 12.1.0.2.0 - Production on 02-FEB-2 016 15:44:37

    Copyright (c) 1997, 2014, Oracle. All rights reserved.

    With 64 bit installed on 64 bit OS:

    D:>tnsping

    TNS Ping Utility for 64-bit Windows: Version 12.1.0.1.0 - Production on 02-FEB-2 016 16:00:23

    Copyright (c) 1997, 2013, Oracle. All rights reserved.

    Troy
    • 39
    • 3
    2

    For Unix

    grep "ARCHITECTURE" $ORACLE_HOME/inventory/ContentsXML/oraclehomeproperties.xml
    

    And the output is:

    <PROPERTY NAME="ARCHITECTURE" VAL="64"/> 
    

    For Windows

    findstr "ARCHITECTURE" %ORACLE_HOME%\inventory\ContentsXML\oraclehomeproperties.xml
    

    And the output can be:

    <PROPERTY NAME="ARCHITECTURE" VAL="64"/>
    
    Prokhozhii
    • 622
    • 1
    • 8
    • 12
    -1

    On 64-bit system:

    32-bit Driver: C:\Windows\SysWOW64\odbcad32.exe

    64-bit Driver: C:\Windows\System32\odbcad32.exe

    Go to Drivers Tab
    Version is shown there as well.

    Ivan Chau
    • 1,403
    • 1
    • 18
    • 28