Oracle 9i Client and System.Data.OracleClient

If you haven’t yet upgraded to a newer Oracle client (e.g. 9.2) or you
are having problems with your current Oracle client (9i or higher) then
you will need to take a few steps to make your client work as you might
expect.  There are two main considerations:

  • TNSNAMES.ORA must be local
  • Permissions must be reset on your client directory

tnsnames.ora
Typically, companies will centralize the tnsnames.ora files (used for
resolving Oracle service names) but putting it on a fileserver and
pointing to it in the registry.  This works just fine for Oracle’s
toolset and many other client programs with the exception of the
System.Data.OracleClient ADO.Net provider.  The provider, for some
reason, expects this file to be installed locally (example:
c:oracleora92…tnsnames.ora).  Installing (and perhaps
mirroring from a network share) locally will take care of the first
requirement.

Permissions

For some reason, the permissions for the "Authenticated Users" user is
not fully propagated throughout the Oracle client install.  The
fix for this is straightforward as well:

  1. Open Explorer to your client install directory (c:oracleora92)
  2. Right-click ora92 and select propertied
  3. Select the "Security" tab
  4. Select the "Authenticated Users" entry
  5. Uncheck the "Read and Execute" attribute
  6. Click Apply
  7. Re-check the "Read and Execute" attribute
  8. Click Ok
  9. Reset IIS

At this point the Oracle provider should work!

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s