Determine Oracle Server or Oracle Client Installation

In my shop we have several Solaris bash shell scripts that help with database procedures/maintenance.  One of the things that we rely on, is the condition on a particular box, whether the database server software or client software is installed.  Via the script what would be a good way to determine whether I have a server or client installed on a particular Solaris box?
Who is Participating?
I wear a lot of hats...


David FavorLinux/LXD/WordPress/Hosting SavantCommented:
Simple way will be to run the which on various executables.

If a path is returned, then the executable is installed, so you'll run which on both your client + server executables.
johnsoneSenior Oracle DBACommented:
I don't believe that which would be a definitive answer.  That would mean it is installed and on the path.

For Solaris, I would look for the /var/opt/oracle directory.  There should be a file named oraInst.loc in that directory.  If that directory is there, then there is likely an Oracle install on the machine.  Not totally definitive, as if you know a few tricks you can put that in a different place, but it should be pretty close.

If you are using instant client instead of the full client install, it will be almost impossible to determine if it is installed or not.

Experts Exchange Solution brought to you by

Your issues matter to us.


Start your 7-day free trial
Geert GOracle dbaCommented:
I wrote a few scripts to monitor an oracle  server
part of this is the use of oracle client

after much pains, I simply copy the instant client to the same path on all my servers and refert to it
the instant client doesn't require an installation

that's the easiest way to not depend on any other items installed on a server an no need to check
off course, you need the script to use the hardcoded path of the instant client
Server Software

From novice to tech pro — start learning today.