Improve company productivity with a Business Account.Sign Up

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 3723
  • Last Modified:

ORA-12203 TNS: Unable to connect to Destination

I installed Oracle 8.05 on Redhat 6.1 linux. If i fire up SQl plus seesion from the localhost, i can login succsfully as any user, If i go to a win98 or NT machine, I will get the following error after trying to start any oracle Tool
ORA-12203 TNS: Unable to connect to Destination

I have the correct entries for the TNS names file, The SID is defualt "ORCL"
using ip i tried both the ip address and just the host name in the tns file, and i tried it with both with the .world and without the .world. the same client workstation are able to connect to another ORACLE server that is running on NT, I am a bit new to this , so any help would be greatly appreciated.
Thanks in advance

  • 7
  • 4
  • 2
  • +4
1 Solution
Create a host string using net8 easy configuration utility and try.


   You can try the following,to test the connectivity

   1)  ping <ip address of linux m/c> ;from the win95/98/NT client.

   if it works fine then,from the command prompt of the client issue the command,

   2) tnsping '< the alias you have created in Tnsnames.ora of client>'

the status should be 'OK'.

kluteAuthor Commented:
As far as pinging the linux computer, I can telnet into it just fine, Wow I completley forgot all about tns ping utility, i will try that on Monday.
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

if you can telnet to the linux box, then i believe that you should be able to ping too.

Three ways for the resolution of service names.

1. Host naming: using this method you would use the computer name as the service name like <username>/<password>@<machinename>
For this method there is a very little client configuration required.

2. Local Naming: using the TNSNAMES.ORA file. Service names would map to connect descriptors stored in this file. There are 2 files that you have to be sure of. SQLNET.ORA and TNSNAMES.ORA file.
the path of these 2 files would be set in the registry TNS_ADMIN. Oracle is going to search for these 2 files in the directory set to TNS_ADMIN. If you don't find an entry in the registry, then the default dir ORACLE_HOME\NET80\ADMIN is the directory.
sqlnet.ora -- client configuration file.
make sure that any entry: names.directory_path = (TNSNAMES)
is present.
Next thing is to have the correct descriptor. For eg:
    (ADDRESS = (PROTOCOL = TCP)(HOST = w887n)(PORT = 1521))
      (SID = ORCL)
here the "test" is the service name.
users would connect to a database with an sid ORCL running on a machine named "w887n" by <username>/<password>@test
you can specify the ip address of the host for the HOST parameter in the connect descriptor.

3. using Oracle Names.
If you need info on this leave a comment here.

jtriftsMI and AutomationCommented:
If your default domain name is .world, try tagging on .world to your call to connect.  

Q1. Does this do anything?

Check that all relevant directories have tnsnames.ora / sqlnet.ora files present:

e.g. if the following folders exist:




Q2. What tools have you tried connecting with?  
Q3. Do you use toad? / Does this connect?

Q4. If you check your sqlnet.log file. What is the description of the problem? (this should be more detailed than the error message you receive).


After a recent change installation of Developer 2000 (version  6.05) we
had this same problem on only one of the 50+ forms we have.

This form was based upon a view and although we recreated the form and view and everything else we could think of the problem persisted.  Our main menu would open the form and it could be used all day as long as you did not close it.  Once it was closed, the database was disconnected.
As a temp work around, users kept one PC open just to use this form.

Our Oracle was on an NT machine and as it turned out, the use of Statitics was the bug and had to do with the NT box.  

Try having the DBA turn off statistics (use rule base) and see if this does not do the trick.  It immediately solved our problem.
kluteAuthor Commented:
I went to the server
typed lsnrctl start ' to start the listener'

then svrmgrl,
connect internal,
then startup,

this started and brought up the databases.
here is a list of errors i get

Warning: You are no longer connected to ORACLE.
SQL> connect system/manager@
ORA-12224: TNS:no listener


TNS Ping Utility for 32-bit Windows: Version - Production on 07-MAR-00

(c) Copyright 1997 Oracle Corporation.  All rights reserved.

Attempting to contact (ADDRESS=(PROTOCOL=TCP)(Host=
TNS-12541: TNS:no listener

I really dont know what to do next

I doubt if you cannot connect using

connect internal/oracle@

you have to create a host string. Try creating a connect string using sql*net or net8 easy config.
kluteAuthor Commented:
Adjusted points to 225
klute, why don't you create a connect string and try it.
kluteAuthor Commented:
I just want to make sure we are on the page here, when you say create a connect string, you mean go to Oracle net 8 easy config, and just follow the wizard, If so i will go ahead and try it andlet you know.


jtriftsMI and AutomationCommented:

To re-iterate, if you are using easy config, this should make use of your sqlnet.ora and tnsnames.ora files to connect.

If you get an error, more details can be found in the sqlnet.log.  Please check this and post the error descriptions.

Also, does your defeault domain (in the sqlnet.ora file) match the domain tnsnames.ora file?

Are these files present in your net80/admin (and any other netword/admin) folder(s)?
kluteAuthor Commented:
 i have created a new entry in tnsnames
by using the net8 easy config wizard.
at the end it gives you a chance to test your connection, this is what i get


The test did not succeed.
ORA-12224: TNS:no listener

There may be an error in the fields entered
or the server may not be ready for a connection.
You can check the server and retry, or continue.

when i start the server this what i do

[oracle@server01 oracle]$ lsnrctl start

LSNRCTL for Linux: Version - Production on 09-MAR-00 20:21:08

(c) Copyright 1997 Oracle Corporation.  All rights reserved.

Starting /usr/oracle/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version - Production
System parameter file is /usr/oracle/network/admin/listener.ora
Log messages written to /usr/oracle/network/log/listener.log
Listening on: (ADDRESS=(PROTOCOL=ipc)(DEV=6)(KEY=ORCL))
Listening on: (ADDRESS=(PROTOCOL=ipc)(DEV=10)(KEY=PNPKEY))
Listening on: (ADDRESS=(PROTOCOL=tcp)(DEV=11)(HOST=

Alias                     LISTENER
Version                   TNSLSNR for Linux: Version - Production
Start Date                09-MAR-00 20:21:16
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  OFF
SNMP                      OFF
Listener Parameter File   /usr/oracle/network/admin/listener.ora
Listener Log File         /usr/oracle/network/log/listener.log
Services Summary...
  ORCL          has 2 service handler(s)
The command completed successfully        

listener is started, then i go and bring up the databases

[oracle@server01 oracle]$ svrmgrl

Oracle Server Manager Release - Production

(c) Copyright 1997, Oracle Corporation.  All Rights Reserved.

Oracle8 Enterprise Edition Release - Production
With the Partitioning and Objects options
PL/SQL Release - Production

SVRMGR> connect internal
SVRMGR> startup
ORACLE instance started.
Total System Global Area                          4754704 bytes
Fixed Size                                          48400 bytes
Variable Size                                     4222976 bytes
Database Buffers                                   409600 bytes
Redo Buffers                                        73728 bytes
Database mounted.
Database opened.
SVRMGR> quit
Server Manager complete.
[oracle@server01 oracle]$                      


i then can start sqlplus on the server

SQL*Plus: Release - Production on Thu Mar 9 20:29:46 2000

(c) Copyright 1998 Oracle Corporation.  All rights reserved.

Enter user-name: system
Enter password:

Connected to:
Oracle8 Enterprise Edition Release - Production
With the Partitioning and Objects options
PL/SQL Release - Production


I can run basic queries too (from the server)

SQL> select * from tab;

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
AQ$DEF$_AQCALL                 VIEW
AQ$DEF$_AQERROR                VIEW
AQ$_QUEUES                     TABLE
AQ$_QUEUE_TABLES               TABLE
AQ$_SCHEDULES                  TABLE
CATALOG                        SYNONYM
COL                            SYNONYM
DEF$_AQCALL                    TABLE
DEF$_AQERROR                   TABLE
DEF$_CALLDEST                  TABLE

TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
DEF$_ERROR                     TABLE
DEF$_LOB                       TABLE
DEF$_ORIGIN                    TABLE
DEF$_PROPAGATOR                TABLE
DEF$_TEMP$LOB                  TABLE
PRODUCT_PRIVS                  VIEW
PUBLICSYN                      SYNONYM
But i cannot connect to it from any windows clients.
i get an error like the one above about the listener not running..

Please advise.
Thanks so much in advance

ok, your listener is running fine.
The listener is listening on the default port of 1521.
In case if you have a tnsnames entry with a different port number then you'll get that message.

Another option, look for duplicate tnsnames.ora files. Sometimes having more than one file also causes this message.

Post your tnsnames.ora entry too.
kluteAuthor Commented:
I only have 1 tnsnames file on the workstation.
I checked through the entire file system and there was only one file.
I tried this from 5 windows NT computers and 1 Win98 comp. they have only one ver of tnsnames.ora
and none of then can connect they all get the same error about the listener not running.

klute, please post your tnsnames.ora entry here.
Your listener is working just fine on lo (loopback)

                    Listening on: (ADDRESS=(PROTOCOL=tcp)(DEV=11)(HOST=

what you need to do is add another entry in the listener.ora for an IP Address or hostname for your local network.

The other client machines cannot connect to on your machine.

Thanks for posting the listener log - it was easy to spot.

kluteAuthor Commented:
Wow, its the stupid things that you overlook, When i initially modyfied the listener.ora file i could not remember the ip address that box had so i just put localhost instead of the ip.
you where right 100% it was listening on the loopback adapter. And i never paid ettention to the ip it was displaying in the log. But When i put the correct ip everythng worked.
wow i dont know how to thank you enouph paul. ,

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

  • 7
  • 4
  • 2
  • +4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now