webentwicklung-frage-antwort-db.com.de

ORA-12560: TNS: Protokolladapterfehler

enter image description here

Ich Google [d] für diesen Fehler ORA-12560: TNS: Protokolladapterfehler aber nicht in der Lage, den tatsächlichen Grund zu finden und wie man diesen Fehler löst?

Kann mir jemand eine perfekte Lösung nennen, um das Anmeldeproblem zu lösen.

55
mr_eclair
  1. Wechseln Sie zu dem Windows-Computer, auf dem sich der Oracle-Datenbankserver befindet
  2. Gehen Sie in Windows zu Start -> Ausführen -> Services.msc. Suchen Sie OracleService <SID> (hier OracleServiceORCL) und klicken Sie auf Start, um den Oracle-Datenbankdienst zu starten (falls nicht bereits ausgeführt). Services

  3. Sobald das Programm ausgeführt wird, führen Sie über die Eingabeaufforderung Folgendes aus:

    tnsping < tnsalias > 
    

    (tnsalias Eintrag finden Sie in tnsnames.ora Datei)

79
Bharathi

In meinem Fall hatte ich kein OracleService (OracleServiceORCL) in Windows Services.msc wie beschrieben in Bharathis Antwort .

Ich habe diesen Befehl ausgeführt:

C:\> ORADIM -NEW -SID ORCL

und dann erschien gerade das OracleService namens OracleServiceORCL und wurde in Services.msc gestartet. Wirklich nett.


Quelle: https://forums.Oracle.com/forums/message.jspa?messageID=4044655#4044655

23

Scheint, als wäre die Datenbank nicht aktiv. Dies kann an einem Neustart des Computers liegen und die Instanz ist nicht auf Autostart eingestellt und wird daher nach dem Start vom Bildschirm "Dienste" nicht automatisch gestartet.

Gehen Sie einfach zur Eingabeaufforderung

  1. Setzen Sie die Oracle SID C:> set Oracle_sid = ORCL

  2. Führen Sie nun den Befehl Net Start aus. C:> net start oracleserviceORCL

22
Yasir Ahmed

Fügen Sie der Umgebung die folgende Variable und den folgenden Wert hinzu, um die Position der Datei tnsnames.ora zu identifizieren:

TNS_ADMIN

C:\Oracle\Produkt\10.2.0\Client_1\Netzwerk\Administrator

9
user2382157

wenn Sie diesen Fehler über die Befehlskonsole erhalten, können Sie ihn vermeiden, indem Sie sqlplus/nolog eingeben

dann kannst du conn user/pass @Host: port/service verbinden

6
demian

Nach der Suche eine Menge bekam einen einfachen Weg, um es zu lösen. Folgen Sie einfach den Schritten.

  1. Überprüfen Sie den Status Ihres Hörers.
    1. öffne die Eingabeaufforderung und tippe lsnrctl status
    2. Sie werden keinen Zuhörer bekommen.
  2. Öffnen Sie nun die Datei listener.ora, Die sich in folgendem Verzeichnis befindet: C:\oraclexe\app\Oracle\product\11.2.0\server\network\ADMIN

    1. Öffnen Sie diese Datei und ändern Sie den Host-Parameter mit Ihrem Computernamen
    2. Sie können Ihren Computernamen abrufen, indem Sie mit der rechten Maustaste auf My Computer Klicken, Ihren Computernamen überprüfen und den Host-Parameter wie folgt durch Ihren Computernamen ersetzen:

      LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) (ADDRESS = (PROTOCOL = TCP)(Host = Electron-PC)(PORT = 1521) ) ) )

      Hier können Sie also Host = Electron-PC Beobachten, das ist mein Computername.

    3. Speichern Sie die Datei listener.ora und kehren Sie erneut zu cammand propt zurück

    3.Geben Sie Folgendes in die Eingabeaufforderung ein lsnrctl start

Dies startet das OracleTNSListner.

sie können dies im Dienst überprüfen, indem Sie die Registerkarte Dienste des Task-Managers öffnen. Wenn es nicht automatisch gestartet wird, können Sie es starten.

Nur so viel und Sie sind bereit, wieder an Oracle zu arbeiten.

Viel Glück.

3
Mrinmoy

Sehr oft bedeutet dies, dass der Hörer noch nicht gestartet ist. Überprüfen Sie das Bedienfeld Dienste.

Unter Windows (wie Sie) ist eine weitere häufige Ursache, dass die Oracle_SID nicht in der Registrierung definiert ist. Bearbeiten Sie die Registrierung, oder legen Sie die Oracle_SID in einem CMD-Feld fest. (Da Sie sqlplusw.exe ausführen möchten, sollten Sie die Registrierung bearbeiten.)

3
APC

Ich habe das Problem auf einfache Weise gelöst. Mein Orakel lief in der Vergangenheit einwandfrei. Nachdem ich MS SQL Server installiert hatte, bemerkte ich dieses Problem. Ich habe gerade MS SQL Server auf meinem Computer deinstalliert, dann war das Problem weg. Stellen Sie sicher, dass Sie Ihren Computer danach neu starten. Jetzt kann ich wieder über SQLPlus eine Verbindung zur Oracle-Datenbank herstellen. Ich vermute, dass es einen Konflikt zwischen den beiden gibt. Hoffe das hilft.

2
BigData

Eine weitere mögliche Lösung, die nur für mich funktioniert hat ... wenn ich bedenke, dass ich mein lokales Login als DBA-Berechtigung verwendet habe.

Befolgen Sie die Schritte, um zu Services zu gelangen. Klicken Sie mit der rechten Maustaste auf die Instanz und wählen Sie "Anmelden". (Möglicherweise nicht der Name, aber eine der Registerkarten mit Berechtigungen). Ändern Sie die Einstellungen, um LOCAL zu verwenden.

2
ClickerTweeker

In meinem Fall (für OracleExpress) lief der Dienst, aber ich bekam dieses Problem, als ich versuchte, über sqlplus ohne Verbindungskennung auf die Datenbank zuzugreifen:

sqlplus sys/mypassword as sysdba  

Damit es funktioniert, musste ich die Verbindungskennung (XE für Oracle Express) hinzufügen, sodass der folgende Befehl in Ordnung war:

sqlplus sys/[email protected] as sysdba

Wenn Sie immer noch ORA-12560 erhalten, stellen Sie sicher, dass Sie den XE-Dienst anpingen können. Verwenden:

tnsping XE

Außerdem sollten Sie eine OK-Nachricht zusammen mit der vollständigen Verbindungszeichenfolge erhalten (der Befehl tnsping befindet sich im Oracle-Installationsverzeichnis: [Oracle Express-Installationsverzeichnis] ​​\ app\Oracle\product\11.2.0\server\bin). Wenn Sie nicht pingen können, stellen Sie sicher, dass Ihr tnsnames.ora Datei ist für sqlplus erreichbar. Möglicherweise müssen Sie die Umgebungsvariable TNS_ADMIN festlegen, die auf Ihr ADMIN-Verzeichnis verweist, in dem sich die Datei befindet. Beispiel:

TNS_ADMIN=[Oracle express installation dir]\app\Oracle\product\11.2.0\server\network\ADMIN
1
walkeros

Wenn keines der oben genannten Verfahren funktioniert, versuchen Sie Folgendes: Ändern Sie das LISTENER.ora (meins befindet sich in: Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora) ==> füge einen benutzerdefinierten Listener hinzu, der auf deine Datenbank (SID) verweist. Beispiel: Meine SID ist XZ0301, also:

## Base XZ03001

SID_LIST_LISTENER_XZ03001=(SID_LIST=(SID_DESC=(Oracle_HOME =
E:\Oracle\product\11.2.0\dbhome_1)(SID_NAME= XZ03001)))

LISTENER_XZ03001=(DESCRIPTION_LIST=(ADDRESS=(PROTOCOL =
TCP)(Host=MyComputerName)(PORT= 1521)))

DIAG_ADR_ENABLED_LISTENER_XZ03001=ON

ADR_BASE_LISTENER_XZ03001=E:\Oracle

Starten Sie Ihren Computer neu

Verwenden Sie unter Windows 7 Folgendes, um LISTENER.ora zu ändern: - Gehen Sie zu Start> Alle Programme> Zubehör. - Klicken Sie mit der rechten Maustaste auf Editor und dann auf Als Administrator ausführen. - Datei> Öffnen und navigieren Sie zur Datei tnsnames.ora. - Nehmen Sie die gewünschten Änderungen vor und speichern Sie sie

1
user2129206

Fließen die fließenden Schritte:

  1. Bearbeiten Sie die Dateien listener.ora und tnsnames.ora im Verzeichnis $ Oracle_home\product\11.2.0\client_1\NETWORK\ADMIN

    ein. Füge die Datei listener.ora hinzu

    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
          (ADDRESS = (PROTOCOL = TCP)(Host = 127.0.0.1)(PORT = 1521))
    )
    

    )

ADR_BASE_LISTENER = C: [hier ist c das mündliche Ausgangsverzeichnis]

b. in tnsnames.ora Datei hinzufügen

    SCHEMADEV =
            (DESCRIPTION =
                     (ADDRESS_LIST =
                     (ADDRESS = (PROTOCOL = TCP)(Host = dabase_ip)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = SCHEMADEV)
    )
  )
  1. Öffnen Sie die Eingabeaufforderung und geben Sie Folgendes ein
    sqlplus-Benutzername/passowrd @ Oracle_connection_alias

Beispiel
Benutzername: Ihr_Datenbank-Benutzername
Passwort: Ihr_Datenbankkennwort
Oracle_connection_alias: SCHEMADEV für obiges Beispiel.

1
Md. Kamruzzaman

Sie müssen SQLPlus mitteilen, bei welcher Datenbank Sie sich anmelden möchten. Die Host-Zeichenfolge muss entweder eine Verbindungszeichenfolge oder ein in Ihrer Datei TNSNames.ora konfigurierter Alias ​​sein.

0
Andrew Cooper

ORA-12560: TNS: Protokollfehler

  1. umgebungsvariablen festlegen: Oracle_BASE, Oracle_HOME, Oracle_SID
  2. stellen Sie sicher, dass Ihr Nutzer Teil von Oracle_GROUP_NAME (Windows) ist.
  3. stellen Sie sicher, dass die Datei Oracle_HOME/network/admin/sqlnet.ora wie folgt lautet: SQLNET.AUTHENTICATION_SERVICES = (NTS)
  4. (Windows) Seien Sie vorsichtig, wenn Sie einen neuen Oracle-Client hinzufügen: Fügen Sie der PATH-Umgebung einen neuen Pfad hinzu. Variable kann die Dinge durcheinander bringen. Der erste Eintrag in dieser Variablen macht einen Unterschied: Stellen Sie sicher, dass die ausführbare Datei sqlplus im Oracle_HOME (Oracle_HOME/bin) in der PATH-Umgebung an erster Stelle steht. Variable.
0
Eliandro

In meinem Fall (ORA-12560: TNS-Protokolladapterfehler) Problemursache für Datenbankverbindungsprobleme wie Datenbank, Benutzername und Kennwort.

Sobald Sie das Problem haben. Zunächst müssen Sie Verbindungsdetails überprüfen, nach dem Überprüfen des Oracle-Dienstes und weitere.

Ich habe einige Verbindungsdetails verpasst, also habe nur ich TNS-Protokolladapterfehler, Ich werde die Verbindungsdetails ändern, es würde gut funktionieren .

0
muthukumar

Es hat wirklich auf meiner Maschine funktioniert. Aber anstelle von OracleServiceORCL habe ich OracleServiceXE gefunden.

0
user2851218

Ich hatte das Problem "ORA-12560: TNS: Protokolladapterfehler" und habe 2 Stunden lang gegoogelt, weil ich nicht auf Details geachtet habe. Ich habe die Eingabeaufforderung geöffnet und hatte dann Folgendes:

C:\Users\Frodo>set Oracle_sid=<DB name>

... während es so sein sollte:

C:\>set Oracle_sid=<DB name>

C:> sollte statt C:\Users\Frodo> sein - das war mein Problem; so funktionierte das:

C:\Users\Frodo> cd c:
C:\>set Oracle_sid=<DB name>
C:\>exp ........
0
Cristian Oprea