Solved

oracle listner problem

Posted on 2004-09-01
5
1,024 Views
Last Modified: 2008-01-09
I have oracle 10g server running on redhat linux 9.0, the problem is that the when trying to connect from the clients its giving the error "ORA-12516: TNS:listener could not find instance with   matching protocol stack.". After restarting the db its works fine. Again the same problem happens after some time. What could be the problem. Please give me a solution for this

thanks in advance

Shaju
0
Comment
Question by:shajumc
  • 2
5 Comments
 

Expert Comment

by:sfardin
ID: 11960962
How is your Server configured? Is it shared or dedicated?
0
 

Expert Comment

by:sfardin
ID: 11961000
copied from Oracle Metalink

Symptom(s)
~~~~~~~~~~
Client connections may intermittently fail with either of the following errors:

TNS-12516 TNS:listener could not find instance with matching protocol stack
TNS-12519 TNS:no appropriate service handler found

Additionally, a TNS-12520 error may appear in the listener log.

TNS:listener could not find available handler for requested type of server

The output of the lsnrctl services command may show that the service handler
is in a "blocked" state.
 
e.g. '"DEDICATED" established:1 refused:0 state:blocked'

Change(s)
~~~~~~~~~~

None necessarily.  Perhaps increase in load.


Cause
~~~~~~~
 
By way of instance registration, PMON is responsible for updating the listener
with information about a particular instance such as load and dispatcher
information.  Maximum load for dedicated connections is determined by the
PROCESSES parameter.  The frequency at which PMON provides SERVICE_UPDATE
information varies according to the workload of the instance.  The maximum
interval between these service updates is 10 minutes.  

The listener counts the number of connections it has established to the instance
but does not immediately get information about connections that have terminated.  
Only when PMON updates the listener via SERVICE_UPDATE is the listener
informed of current load.  Since this can take as long as 10 minutes, there can be
a difference between the current instance load according to the listener
and the actual instance load.  

When the listener believes the current number of connections has reached maximum
load, it may set the state of the service handler for an instance to "blocked"
and begin refusing incoming client connections with either of the following
errors:

TNS-12516 TNS:listener could not find instance with matching protocol stack
TNS-12519 TNS:no appropriate service handler found

Additionally, a TNS-12520 error may appear in the listener log.

The output of lsnrctl service may show that the service handler is "blocked".
 
e.g. '"DEDICATED" established:1 refused:0 state:blocked'

Fix
~~~~

Increase the value for PROCESSES.
0
 
LVL 48

Accepted Solution

by:
schwertner earned 125 total points
ID: 11961106
This is a bug in 10g and will be fixed in next releases. I experience the same problem with 10g on Windows/2000.
The problem arises when we shutdown the instance and after that bounce it.  In this case we have to restart the box - fun!
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Need SQL Query to Find Foreign-keys Without Indexed Columns 4 32
Oracle cursor lifecycle inside procedure. 2 24
plsql job on oracle 18 72
Excess Redo 3 30
Introduction A previously published article on Experts Exchange ("Joins in Oracle", http://www.experts-exchange.com/Database/Oracle/A_8249-Joins-in-Oracle.html) makes a statement about "Oracle proprietary" joins and mixes the join syntax with gen…
From implementing a password expiration date, to datatype conversions and file export options, these are some useful settings I've found in Jasper Server.
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.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…

679 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