I am attempting to connect with an oracle database with sqldeveloper.

I have installed the .Internet oracle motorists and placed the tnsnames.ora file at C:Oracleproduct11.1.0client_1NetworkAdmin.

I am while using following format in tnsnames.ora.

dev =
(SERVER = Devoted)
(SERVICE_Title = idpdev2)

In sqldeveloper, after i try to produce a new connection, no tns names appear as options.

Can there be something I am missing?

SQL Developer will appear within the following location within this order for any tnsnames.ora file

  1. $HOME/.tnsnames.ora
  2. $TNS_ADMIN/tnsnames.ora
  3. TNS_NAMES research type in the registry
  4. /etc/tnsnames.ora ( non-home windows )
  5. $ORACLE_HOME/network/admin/tnsnames.ora

In case your tnsnames.ora file isn't getting recognized, make use of the following procedure:

  1. Define an environment variable known as TNS_ADMIN to suggest towards the folder that consists of your tnsnames.ora file.

    In Home windows, this is accomplished by moving to manage Panel > System > Advanced Tab > Atmosphere Variables

    In Linux, define the TNS_ADMIN variable within the .profile file in your house directory.

  2. Read the os is realizing this environment variable and restart SQL Developer. In the home windows command line:
    echo %TNS_ADMIN%

    From linux: echo $TNS_ADMIN

  3. Now in SQL Developer right click Connections and choose new connection. Choose connection type TNS within the drop lower box. Your records from tnsnames.ora should now display here.

You could discover the position of the tnsnames.ora file getting used by running TNSPING to check on connectivity (9i or later):

C:>tnsping dev

TNS Ping Utility for 32-bit Home windows: Version 10.2..1. - Production on 08-JAN-2009 12:48:38

Copyright (c) 1997, 2005, Oracle. All privileges reserved.

Used parameter files: C:oracleproduct10.2.0client_1NETWORKADMINsqlnet.ora

Used TNSNAMES adapter to solve the alias Trying to make contact with (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = XXX)(PORT = 1521)) (CONNECT_DATA = (SERVICE_Title = DEV))) OK (30 msec)


Sometimes, the issue is using the entry you've made in tnsnames.ora, not too the machine aren't able to find it. Nevertheless, To be sure that getting a tns_admin atmosphere variable set is really a Positive Thing, because it eliminates the inevitable problems that arise with identifying which tnsnames file has been utilized in systems with multiple oracle houses.

Open SQL Developer. Visit Tools -> Preferences -> Databases -> Advanced Then clearly set the Tnsnames Directory

My TNSNAMES was setup properly and that i could connect with Toad, SQL*Plus etc. however i needed to get this done to obtain SQL Developer to operate. Possibly it had been victory 7 problem because it would be a discomfort to set up too.

The steps pointed out by Jason are extremely good and really should work. There's just a little twist with SQL Developer, though. It caches the bond specifications (host, service title, port) the very first time it reads the tnsnames.ora file. Then, it doesn't invalidate the specs once the original entry is taken away in the tnsname.ora file. The cache continues despite SQL Developer continues to be ended and restarted. This isn't this kind of irrational method of handling the problem. Even when a tnsnames.ora file is temporarily not available, SQL Developer can continue to result in the connection as lengthy because the original specifications continue to be true. The issue includes their next little twist. SQL Developer goodies service names within the tnsnames.ora file as situation-sensitive values when solving the bond. If you once had an entry title ABCD.world within the file and also you changed it by having an new entry named abcd.world, SQL Developer wouldn't update its connection specs for ABCD.world - it'll treat abcd.world like a different connection altogether. Why am I not surprised that the Oracle product would treat as situation-sensitive the items in an oracle-developed extendable that's specifically situation-insensitive?