[Last Call] Learn about multicloud storage options and how to improve your company's cloud strategy. Register Now


Ora-12203 error

Posted on 1998-12-18
Medium Priority
Last Modified: 2012-08-14
This seems tobe an TNS error.  What does it mean? (Ora-12203) and how can it be fixed?
Question by:sandrapei
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment

Accepted Solution

poncejua earned 200 total points
ID: 1083415
The ORA-12203/TNS-12203 error message means:    
  "TNS:unable to connect to destination"    
This message can be displayed for a variety of reasons.    
1) An invalid TNS service name was supplied in the connect string.    
   Verify that the TNS service name supplied in your connect string exists in your TNSNAMES.ORA file.  Also verify that the ADDRESS information for that TNS service name is valid.    
    a) Is the HOST or SERVICE name correct?  
    b) Is the PORT specified correct?    
2) The destination system's listener is not listening. Verify that the remote system's SQL*Net listener is running and that the instance is started.    
3) There may be underlying network transport problems.    
   Verify with utilities supplied with the networking protocol being used that the protocol itself is functional. For esample, with TCP/IP, try PINGing the remote system.    
4) TNSNAMES.ORA file is not in the %ORACLE_HOME%\NETWORK\ADMIN directory.    
   Make sure the Windows workstation has its TNSNAMES.ORA file located in  the directory specified by: %ORACLE_HOME%\NETWORK\ADMIN    
   The %ORACLE_HOME% string should be replaced with the value that is present in your workstation's ORACLE.INI parameter named ORACLE_HOME.    
   If your workstation's ORACLE.INI file has a parameter named TNS_ADMIN, make sure that the TNSNAMES.ORA file is located in the directory pointed to by the TNS_ADMIN parameter.    
5) Make sure the Oracle Protocol adapter for the selected networking protocol is installed.    
   For 16-bit, the %ORACLE_HOME%\BIN directory should have the following  files for each protocol:        
TCP/IP:   NTT.DLL       SPX:      NTS.DLL  
   For 32-bit, the %ORACLE_HOME%\BIN directory should have the following  files for each protocol:        
SPX      :   NTSNT.DLL      
NamedPipe:   NTNNT.DLL    
   A missing protocol adapter driver will usually produce the following errors in the SQLNET.LOG and or any client trace file:    
6) Make sure any Oracle Interchanges (if any) used for this connection  are running.    

7) Ensure that the (HOST=tcpiphostname) for TCP/IP and  
   (SERVICE=spxservicename) for SPX are the the same on the server and client  workstations.    
   This assumes a global knowledge and usage of the same TCP/IP hostname on  the server and client workstations.    
   For TCP/IP setups, make sure that the HOST parameter in the LISTENER.ORA on the server and the TNSNAMES.ORA file on the client point to the same name, or at least to names that are then translated to the same IP  address by each system.  This is especially important for servers with  multiple IP addresses assigned to the various network interfaces on the  server.    
   For SPX setups, the name must be the same on the server and client  workstations.    
8) When using the V2 APPC Adapter for Windows, the alias descriptor in the tnsnames.ora file should have the value for PLU_LA always in upper case or a TNS-12203 will result.  This is irrespective of the case used in the SIDEINFO.NSD file for the symbolic destination name. For example:    
    os2=         (DESCRIPTION=            
will result in a TNS-12203 error.  
    os2=         (DESCRIPTION=            
    will connect fine; where os2 or OS2 is defined as the SYMBOLIC DESTINATION NAME in the SIDEINFO.NSD file.      
9)  When using the V2 NETBIOS Adapter for Windows, and getting  either an ORA-12203 or ORA-12224, reference BUG #301274 and #302380 for  the following patch:    
      Patch 378:  NETBIOS Protocol Adapter V2. Windows.  This patch will fix BUGS # 301274 and 302380.    
10) Each machine on the network must have a unique IP address.  If  there are multiple machines using the same IP address then the network will not know which address to send information packets to.  
    This will result in lost packets and maybe lost connections.    
11) Make sure that a ping of the host returns the same IP as the target host.  
    This may occur using RAS (Remote Access Server) on Windows NT. Upgrade NT v4.0 to service pack 3.  
12) ORA-12203 may occur with ORA-12571. If it does, replace the hostname in the HOST parameter of the client tnsnames.ora with the IP address:
      HOST = (        
Stop and start the listener on the server.  
    On Macintosh clients, go into the CONTROL PANEL -> TCP/IP and remove the Name server entries. Unlike PC's, Macintosh clients will use the host/ipaddress lookup server regardless if the (HOST = ipaddress) is  in the tnsnames.ora.  
13) Even if the configuration files appear correct, the listener may be starting with parameters from a checkpoint file with different information than the listener.ora. Remove the following parameter from the listener.ora:        USE_CKPFILE_LISTENER=TRUE  
14) There is also a bug on the USE_PLUG_AND_PLAY_LISTENER parameter (379247) that causes the listener to start on a random port number. Remove the following parameter from the listener.ora:  

Featured Post

Fill in the form and get your FREE NFR key NOW!

Veeam® is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Working with Network Access Control Lists in Oracle 11g (part 1) Part 2: http://www.e-e.com/A_9074.html So, you upgraded to a shiny new 11g database and all of a sudden every program that used UTL_MAIL, UTL_SMTP, UTL_TCP, UTL_HTTP or any oth…
This post first appeared at Oracleinaction  (http://oracleinaction.com/undo-and-redo-in-oracle/)by Anju Garg (Myself). I  will demonstrate that undo for DML’s is stored both in undo tablespace and online redo logs. Then, we will analyze the reaso…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
This video shows how to Export data from an Oracle database using the Original Export Utility.  The corresponding Import utility, which works the same way is referenced, but not demonstrated.

650 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question