ODBC Administrator Can't Find Oracle TNS Names File
-
20-06-2021 - |
Question
With a new Oracle Installation when I go to Configuration Management Tools > Microsoft ODBC Administrator > System DSN > Add > [new installation]
it does not have the TNSNAMES.ora connection name in the drop down. With the old installation, this had worked.
I've tried updating Environment Paths and Registry keys but still can't find a way to get ODBC to see it in the drop down.
There was a previous installation of Oracle Client on the Windows Server. I tried to remove most of the files but our Oracle DBA said we could just do another install and update the Environment Paths with the new location.
I understand there are two other posts on SO here and here regarding this issue. However, I'm not sure TNS PING will help yet because it seems to be an issue regarding Environment Paths and ODBC being able to locate the .ora file.
TNSNAMES.ORA Location
TNS_Admin = E:\app\[username]\product\11.2.0\client_1\network\admin\TNSNAMES.ora
Environment Variables
TNS_Admin = E:\app\[username]\product\11.2.0\client_1
Path = E:\app\[username]\product\11.2.0\client_1
Registry Entries
home3 is the new installation. Should I delete the old registry key (home2)?
HKLM\SOFTWARE\ORACLE\KEY_OraClient11g_home2
and \..._home3
Also, if I select "OraClient11g_home2" in the Create New Data Source screen here is what is displayed in the drop down:
Solution 2
It appears the tumbleweed rolled by on this one but just for everyone who may be experiencing the same issue; I was able to fix this by using the Net Configuration Assistant wizard and providing the right information. It generated tnsnames.ora
in proper format AND it should be noted that the filename given to me was tsnames.ora
!
OTHER TIPS
For the stupid souls like me: if you're writing out tnsnames.ora
via notepad or so, make sure it doesn't have the .txt
extension which is by (our) default not visible in windows explorer
Sorry to revive an ancient thread, but I had the same problem, and Net Configuration Assistant wouldn't run.
(Windows XP SP3, Oracle 11gR2 client)
SOLUTION:
1. Uninstall all other Oracle_Home instances using the Oracle (De-)Installer (don't just go deleting registry keys!), so that you only have the one Oracle_Home that you want to keep:
%oracle-home-that-you-want-to-keep%\client\oui\bin\setup.exe
2. Create or set Windows environment variables:
TNS_Admin = %oracle_home%\client_1\network\admin
Path = %oracle_home%\client_1;
...
3. Reboot. (sigh...)
Anyway, that's what worked for me.
Or just use a connection string that you enter in the textbox (the one that is supposed to get populated using the dropdownbox), e.g. 127.0.0.1/XE see here.
For some reason windows 2012R2 did not have an ORACLE_HOME environment variables set. This can case issues so either add oracle_home
or tns_admin
. Windows 2012 installs had a oracle_home
variable.
Make sure that:
- Your
tnsnames.ora
is encoded in ANSI and not UTF8. - You do not have special characters as üäö, not even in comments.