1.) TEXTE AUS OERR UNTER LINUX
12516, 00000, „TNS:listener could not find available handler with matching protocol stack“
// *Cause: None of the known and available service handlers for the given
// SERVICE_NAME support the client’s protocol stack: transport, session,
// and presentation protocols.
// *Action: Check to make sure that the service handlers (e.g. dispatchers)
// for the given SERVICE_NAME are registered with the listener, are accepting
// connections, and that they are properly configured to support the desired
// protocols.
2.) ERKLÄRUNG
Ursache kann eine sehr hohe Anzahl an Anfragen durch die Clients sein.
3.) LÖSUNGSVORSCHLÄGE
1. Test mit tnsping
Funktioniert tnsping, so ist mit die Datei tnsnames.ora in Ordnung. Das Problem ist dann auf dem Server zu suchen.
2. Abfrage Status Listener
Bei hoher Last blockiert der Listener. Dies wird ersichtlich durch die Abfrage des Listeners
lsnrctl status <listener-name>
Weitere Infos -> Oracle-Metalink (Doc ID 240710.1)
3. Anzahl möglicher Prozesse und Sessions erhöhen:
show parameter processes
show parameter sessions
/* Single Instance */
select count(*) from v$process;
select count(*) from v$session;
select * from gv$resource_limit where resource_name in (‚processes‘,’sessions‘);
/* RAC */
select count(*) from gv$process;
select count(*) from gv$session;
/* Erhöhung der Parameter */
alter system set processes = <nnn> scope = spfile;
alter system set sessions = <nnn> scope = spfile;
/* Restart der Instanz */
shutdown immediate
startup
4. Registrierung der Instanz
Zusätzlich zu der automatischen Registrierung der Instanz die statische Registrierung in der Datei listener.ora vornehmen. Dies geschieht mit dem Eintrag unter dem Parameter SID_LIST