Heim >Datenbank >Oracle >So beheben Sie den Oracle-Fehler 12505

So beheben Sie den Oracle-Fehler 12505

WBOY
WBOYOriginal
2022-05-25 16:02:4315419Durchsuche

12505 Fehler tritt auf, weil „service_name“ und sid inkonsistent sind. Lösung: 1. Verwenden Sie „select INSTANCE_NAME from v$instance“, um die aktuelle SID in der Datenbank abzurufen. 2. Geben Sie die erhaltene SID in die Verbindungszeichenfolge des Datenbankprogramms ein.

So beheben Sie den Oracle-Fehler 12505

Die Betriebsumgebung dieses Tutorials: Windows 10-System, Oracle 11g-Version, Dell G3-Computer.

So beheben Sie den 12505-Fehler in Oracle

Wenn die Eingabeaufforderung 12505 angezeigt wird, kann die der SID entsprechende Instanzbibliothek nicht gefunden werden, d. h. der „Servicename“ von Oracle stimmt nicht mit der Sid überein. 1. Führen Sie diese Anweisung aus: - 12505:

Bei der Anmeldung bei der Datenbank mit PL/SQL DEVELOPER und SQLPLUS gab es zuvor keine Probleme. Als die Anwendung jedoch über JDBC eine Verbindung zu Oracle herstellte, trat der ORA-12505-Fehler auf Derzeit ist mir die im Verbindungsdeskriptor angegebene SID bekannt.... ..

Nach der Suche habe ich festgestellt, dass der Dienstname und der Sid_Name von Oracle inkonsistent sind und dass PL/SQL DEVELOPER und SQLPLUS den Dienstnamen zum Herstellen einer Verbindung verwenden, während die Anwendung eine Verbindung gemäß dem Sid_Name herstellt, sodass PL/SQL DEVELOPER und SQLPLUS eine Verbindung herstellen können, die Anwendung jedoch keine Verbindung herstellen kann. Problem.

Problembeschreibung:

Der folgende Fehler ist heute bei der Verwendung von JDBC zum Herstellen einer Verbindung zur Oracle 10.2.0.1.0-Datenbank aufgetreten:

select INSTANCE_NAME from v$instance;

Die Datenbank kann normal über plsql verbunden werden, oder die Datenbank kann über sqlplus verbunden werden

So beheben Sie den Oracle-Fehler 12505Danach Beim Debuggen und Suchen nach verwandten Daten wurde festgestellt, dass die Ursache des Problems folgende ist:

Wenn JDBC eine Verbindung zur Datenbank herstellt, müssen Sie den SID-Namen der Datenbank anstelle des Dienstnamens der Datenbank verwenden. Wenn Sie zum Herstellen einer Verbindung plsql verwenden Für die Datenbank benötigen Sie nur den Dienstnamen der Datenbank. Ändern Sie daher die Verbindungszeichenfolge „Dienstname“ in „Sid_Name“.

Das obige ist der detaillierte Inhalt vonSo beheben Sie den Oracle-Fehler 12505. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn