TNS: Protokolladapter existiert nicht

Listener existiert nicht!

Listener existiert nicht!

Bei der Erstellung des Listeners stößt bereits eine unangenehme Meldung negativ auf. Es bestünde bereits ein Listener… Das das einfach nicht wahr ist, zeigt ein Blick in das Verzeichnis “$ORACLE_HOME/network/admin”. Im weiten und weisen Internet findet man den Hinweis “Einfach ignorieren!” – Das tat ich…mit mäßigem Erfolg.

Was hier nun wieder nicht so will, wie es soll ist durchaus einen eigenen Artikel wert, denn mit einem Satz oder einem Hinweis auf eine schlaue Seite ist es in diesem Fall nicht getan.
Ist einmal ein ‘holpriger’ Listener angelegt worden, so dürfte dies in etwa wie folgt aussehen.

$ tnsping PROD
TNS Ping Utility for Linux: Version 10.2.0.4.0 - Production on 26-FEB-2009 19:39:51
Copyright (c) 1997,  2007, Oracle.  All rights reserved.
Parameterdateien benutzt:
/u01/app/oracle/product/orauser/network/admin/sqlnet.ora

Adapter TNSNAMES zur Auflösung des Alias benutzt
Attempting to contact (DESCRIPTION = (ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = loalhost)(PORT = 1521)))
(CONNECT_DATA = (SERVICE_NAME = PROD)))
TNS-12538: TNS: Diesen Protokolladapter gibt es nicht

Oracle ist der Überzeugung, dass es sich wohl um “Bug 300970″ handeln muss und das dieser durch das “Relinking” von “tnsping” zu beheben wäre:

cd $ORACLE_HOME/network/lib
make -f network.mk tnsping
#Für SQL*NET v2.3
#make -f ins_network.mk
rm -f $(ORACLE_HOME)bin/tnsping
mv tnsping $(ORACLE_HOME)/bin
chmod 751 $(ORACLE_HOME)/bin/tnsping

Ganz trifft es das wohl nicht, denn ‘network.mk’ gibt es einfach mal nicht!

Vielmehr hilft es, den gesamten TCP-Stack der Datenbank erneut aufzubauen.
den gestehenden Listener zu entfernen und per ‘netca
su – orauser
cd $ORACLE_HOME/network/lib
make -f ins_net_client.mk ntcontab.o
genclntsh
make -f ins_net_client.mk install
make -f ins_net_server.mk install
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk install

Nun kann und sollte der bestehende/alte Listener entfernt und ein neuer (mit netca) erstellt werden.
Das Ergebnis kann sich sehen lassen:
$ tnsping prod

TNS Ping Utility for Linux: Version 10.2.0.4.0 - Production on 26-FEB-2009 20:45:34
Copyright (c) 1997,  2007, Oracle.  All rights reserved.
Parameterdateien benutzt:
/u01/app/oracle/product/orauser/network/admin/sqlnet.ora
Adapter TNSNAMES zur Auflösung des Alias benutzt
Attempting to contact (DESCRIPTION = (ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)))
(CONNECT_DATA = (SERVICE_NAME = PROD)))
OK (10 ms)
Dieser Beitrag wurde unter Datenbank abgelegt und mit verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: KEINE!!! :-P