IFILE directive for tnsnames.ora

  • From: Uwe Küchler <uwe@xxxxxxxxxxxx>
  • To: "oracle-l" <oracle-l@xxxxxxxxxxxxx>
  • Date: Tue, 11 Jan 2011 16:36:10 +0100 (CET)

Dear fellow oracle-l'ers,

let me start with a "happy new year" to y'all first (for the politically
correct of you: Happy change of the Gregorian calendar :-)!

Recently, I've opened an enhancement request with Oracle, asking them to
implement an "IFILE" directive like there is for the init.ora. Support
asked for further clarification of some details, and this is where I'd
like the community to kick in!
So, before detailing my request here's what I'd like to find out:

1. Do you also consider this to be a useful feature?
2. Does your organization also suffer from similar problems?
3. Does OID (Oracle Internet Directory, f.k.a. Oracle Names) make sense
for you/your organization in terms of TCO and availability?
4. regarding the use of TNS_ADMIN2 - would you like to have Oracle client
first check if TNS_ADMIN2 is set, if so, use that value, otherwise check
TNS_ADMIN? Or have the tnsnames.ora in TNS_ADMIN2 supersede the one in
5. Any other comments, suggestions or questions?

Here's an excerpt of my enhancement request:

### Reason current product functionality is insufficient. ###:
Consider an environment where the tnsnames.ora is managed centrally and
deployed over the network to the client machines. Project teams or
individuals might have their own individual settings for development and
test purposes. These settings will be overwritten every time a central
deployment takes place.
Another example is an environment where users are not allowed to alter
sqlnet settings due to security policy (read only access to relevant
In both cases, an additional, individual "mytnsnames.ora" that can be
included to the main tnsnames.ora could solve these issues.

### Detailed description of the Enhancement Request. ###:
Provide a directive like "!include=/path/to/individual/tnsnames.ora".
When this directive gets evaluated by SQL*Net, the included file will be
inserted or appended at the given position.
An alternative (or add-on) could be to let users specify an individual
tnsnames.ora in their environment settings. This could be a new variable
like "TNS_ADMIN2". Or it could mean to allow multiple paths to be
specified in the "TNS_ADMIN" variable.

### How the product can be changed to achieve the desired result. ###:
See above.

### Reasons to consider the Enhancement Request. ###:
I am convinced that the examples I provided above are a pain for many
Oracle users. At least several of my larger customers suffer from the
problem a centrally deployed tnsnames.ora causes when it overwrites your
Using a names server is not an option in many of those cases. Development
and test databases get created and dropped quite often and quite quickly
and the cost and time-span of managing a directory server is mostly
Letting users include their individual settings should be implemented
relatively easy compared to the increase in usability.

Looking forward to having a fruitful discussion,


Other related posts: