RE: Version of Oracle Database without connecting to the database.

  • From: "Mark W. Farnham" <mwf@xxxxxxxx>
  • To: <jkstill@xxxxxxxxx>, <fuadar@xxxxxxxxx>
  • Date: Tue, 4 Nov 2008 17:53:12 -0500

Are we allowed to connect to the server and know which oracle binary file is
running or set $PATH the way it would be after . oraenv is run?


Then, for example, 


strings `which oracle` | grep Release | grep 'Oracle Database' | grep -v %


will report a string like: Oracle Database 11g Release -

I think this works pretty far back, but I haven't tested it except on 11g


Of course this probably requires more horsepower than connecting and
selecting from v$instance, but maybe you're not concerned about the

Just be sure you don't look at any of those strings you might see without a
tight grep filter or you might be "reverse engineering the product."


I would never look at the strings in the Oracle binary, of course, and I
just guessed that 'Oracle Database' and Release would scope it down for you.
(And I figured you didn't want the one with the format string, just the
literal text one..)







From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx]
On Behalf Of Jared Still
Sent: Tuesday, November 04, 2008 4:53 PM
To: fuadar@xxxxxxxxx
Cc: oracle-l@xxxxxxxxxxxxx
Subject: Re: Version of Oracle Database without connecting to the database.


Here's yet another way:

grep -iE 'RDBMS version number|RDBMS release number'
  version constant pls_integer := 9; -- RDBMS version number
  release constant pls_integer := 2; -- RDBMS release number

Jared Still
Certifiable Oracle DBA and Part Time Perl Evangelist

On Fri, Oct 24, 2008 at 7:45 AM, Fuad Arshad <fuadar@xxxxxxxxx> wrote:

I'm trying to find a way to script finding  an approximation of the version
of the database without connecting to the database itself.
The goal is to try to find out of the Oracle_home is a Oracle 10 home , 9
home etc .

right now i'm doiing something like
DATAVERSION1=`echo $ORACLE_HOME | awk -F/ '{print $6}'`
expecting that $6  would lead me to something like

but this is not a very foolproof implementation since installs can take
various forms and break this implementation.

Any ideas of how i can get the oracle version info considering that i  will
always know the value of $ORACLE_HOME.


Other related posts: