Install Oracle Instanct Client on Windows

This install is supposed to be straight forward but I am at a loss here.  I am trying to install Oracle Instant Client first on an XP machine as a test.  I extracted the zip file to:


I went into the environment variables and added a colon and "C:\oracle\instantclient_11_2" to the end of the PATH variable.  (I assume this is right.)

Then I am told to START the application... how do I do that?  None of the extracted executible files achieve a start of the program.  What am I missing here?
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

slightwv (䄆 Netminder) Commented:
What program are you wanring to 'start'?

I have to assume sqlplus.  Did you download the Instant Client with sqlplus?

Chakravarthi AyyalaDatabase AdministratorCommented:
After you extracted the zip file, did you run the "setup" to install the Oracle client?
slightwv (䄆 Netminder) Commented:
Many of the instant clients do not have a setup.exe.  At least the ones I've downloaded.
Determine the Perfect Price for Your IT Services

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden with our free interactive tool and use it to determine the right price for your IT services. Download your free eBook now!

hi colonialiu20,
- i would recommend you to download the instant client Basic Package and SQL Package. extract both file to the same directory.
- after the extraction, setup the following. assuming you extract it to c:\OracleInstantClient:

1- setting up the path variables:
- right-click on My Computer/Computer icon. choose "Properties". in the windows that pop-up, click the "Advanced" tab.  Next, click the button "Environment Variables". on the "System Variable" click "Edit" button and add this to PATH:
PATH=<there will be other path here>;c:\OracleInstantClient;
- then find TNS_ADMIN. if its not available add a new one: TNS_ADMIN=c:\OracleInstantClient

2- copy tnsnames.ora from your database server and paste it in c:\OracleInstantClient. OR create a tnsnames.ora file. i'm sharing an example assuming you have Oracle running on a box at with a listener on port 1521 and a SID of MYDB:
        (ADDRESS =
          (COMMUNITY =
          (PROTOCOL = TCP)
          (Host =
          (Port = 1521)

Open in new window

3- next try to connect to the db using sqlplus on command prompt
sqlplus username/password@MYDB.WORLD

Open in new window

- if you see this error on sqlplus “ORA-12705: Cannot access NLS data files or invalid environment specified” , run regedit from Start > Run
: remove the NLS_LANG from the list
- additional notes: if your application use Oracle Data Provider for .NET or the OLE Provider,
Instant Client won't do. as i know, Instant Client is used to establish a connection via OCI
or JDBC or ODBC.

slightwv (䄆 Netminder) Commented:
>>- additional notes: if your application use Oracle Data Provider for .NET or the OLE Provider, Instant Client won't do. as i know

Depends on the data access provider you are using.  I believe ODP.Net works with the Instant Client.

>>- then find TNS_ADMIN. if its not available add a new one:  TNS_ADMIN=c:\OracleInstantClient

I would suggest you manually create the network\admin directores under the instant client folder and copy/create the tnsnames.ora file there.  This is the 'default' location and you only need the TNS_ADMIN environmnet variable if the file is placed in a non-default folder.

The reason I suggest this is: It's one less thing you need to keep track of.  Granted it is a one-time set it and forget it but still another variable.
colonialiu20Author Commented:
Sorry for the slow response ... notification caught in spam filter.

My sole goal here is to be able to make an ODBC connection to an Oracle Database.  We are 100% Microsoft .NET and SQL Server here, but now have a HR/Finance management system running Oracle.  I need a connection to that database and was advise to Install Instant Client to make this happen.

I downloaded and unzipped the Instant Client - Basic from here:

I am confused by this need for Instant Client AND SqlPlus.  At the same link above there is an "Instant Client - SqlPlus" download.  Does that include SqlPlus or just provide additional libraries?  Its my impression SqlPlus is a component of the core Oracle DB install.  Do I really have to install all that for a data connection?

@ReliableDBA: -Yea, no setup executible ... which is my dilemna here.

@OP_Zaharin: I did your steps 1 and 2. But step three again assumes to use Sql Plus.  Is that a MUST have install?  If so... I have to install ALL of ORACLE to get it?

-Am I to understand that installing Instant Client is nothing more than pasting the files in place, changing some environment vairables and then it just works?  Is it a software package I interface with or just a behind scenes software that magically makes my data connection possible.

Thanks ALL!! I'm new to Oracle and not thrilled about its mysteriousness so far.

slightwv (䄆 Netminder) Commented:
>>Does that include SqlPlus or just provide additional libraries?

Yes to both.  It provides the executable and necessary additional files for it to work with the Basic.

>> Its my impression SqlPlus is a component of the core Oracle DB install.

Not really.  Oracle is client/server out of the box.  sqlplus is a client utility to connect to a database.  You get it with the core install but it is a stand-alone utility.

>> Do I really have to install all that for a data connection?

Not necessary but can come in handy when troubleshooting.  You probably don't want it around on a production box if you don't need it.  Just another potential security risk.

>> Is it a software package I interface with or just a behind scenes software that magically makes my data connection possible.

Nope.  You just about called it.  It is the bare minimum/smallest Oracle client footprint around.  Designed specifically for this:  You need to connect to Oracle and don't want the bloated FULL client install.

>> be able to make an ODBC connection to an Oracle Database

You need the add-on to the basic for ODBC on that same page.

*Instant Client Package - ODBC: Additional libraries for enabling ODBC applications

What app/code will be using this connection?  Since you mention .Net, I would strongly suggest you skip ODBC and use Oracle's ODP.Net data provider.  It also has a small install footprint and should provide flexibility and performance over the ODBC provider.
hi colonialiu20,
- sligthwv have explain most of everything already so i won't be repeating those :)
- reason for the instant client Basic & SQL *Plus package is basically to use Sqlplus to test the database connection between your pc and the Oracle server.
- yes you do need to download both instant client Basic and Sqlplus. Basic contain the core instant client files while Sqlplus ONLY the utility executable and additional file for it to works. no core db installation involve.
- and yes you need to download the ODBC package too because it contain additional libraries for enabling ODBC applications as stated.
- in all, download the Basic + SQL *Plus + ODBC

- why Sqlplus? by using Sqlplus, as in my step#3, if you can connect to the Oracle database server using the utility then your settings for the instant client works. once connected, you can also use it to run Select stmt (Select * from Tablename). which then the next step is to configure your app. however since you have mention on using ODBC, you can opt to skip Sqlplus and test the connection on ODBC datasource administrator.

- i hope this links helps you to setting up instant client ODBC:

colonialiu20Author Commented:
OK guys, thanks for all the information.  I have downloaded and extracted Basic, SQLPlus, and ODBC.

Back to my original question, even with everything extracted into place and all the environment variables created shouldn't there yet be an executible file to actually install Instand client?

I have a "odbc_install.exe" which when run brings up a cmd window and disapears.
I have a "sqlplus.exe" which asks for login and credentials which when supplied returns a:
"ORA-12560: TNS:protocol adapter error" (I assume this means my ORA file is just wrong)
I have a "adrci.exe" which when run returns "No ADR base is set"
I also have a "uidrvci.exe" and "genezi.exe" which seem to do nothing.

ODBC and SQLPlus aside, how do I install Instant Client and know that it is installed?  There is no executible to install or run any program.  I still feel like I'm missing a key step here.


slightwv (䄆 Netminder) Commented:
>>ORA-12560: TNS:protocol adapter error

You need a proper tnsnames.ora file to tell sqlplus where to connect.  This either needs to be in a network/admin or in a folder pointed to by a TNS_ADMIN env variable.


You should run this from a command window.  It likely has install options that it is showing you.  This is why the window probably goes away.
"how do I install Instant Client ...."
- no installation needed. the step is to download and extract the zip files. thats it. (only the ODBC package need installation as slightwv had highlighted above)

"... and know that it is installed?"
- that is why we need the sqlplus package too. after the instantclient package and sqlplus package extraction, do - the environment variable setup and copying the tnsnames.ora from the server (server:\oracle\product\10.2.0\db\network\admin\tnsnames.ora to the instantclient folder) - follow my instruction in earlier ID: 3539963.
- then we test the connection from the client pc using sqlplus. sqlplus is the best way of testing the Oracle connection from client pc to the database server. if sqlplus can connect to the database, thats mean the connection successfully established from the client pc to the database server. then you can proceed to setup the ODBC, then setting up your application connection.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
- btw i just notice your posting "I went into the environment variables and added a COLON and "C:\oracle\instantclient_11_2" to the end of the PATH variable.  (I assume this is right.)"
- did you add colon (:) or semicolon (;)? you should only use semicolon (;)
- eg: C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\QuickTime\QTSystem\;C:\Oracle\instantclient_11_2;
colonialiu20Author Commented:
I am copying the tnsnames.ora file from the oracle server and even copied another file from a separate server that connects to oracle.  -Even so I still get "ORA-12560: TNS:protocol adapter error".  I have to believe the file is correct since it works for two other servers all of which are inhouse.  So unless you guys have another thought I may need to consult the company who originally installed this oracle server.

But ultimately you guys gave me more info than I was hoping for so much appreciated!
colonialiu20Author Commented:
@OP_Zaharin - Yes, I mispoke but did in fact use a semi-colon
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Oracle Database

From novice to tech pro — start learning today.