Die Installation der neuesten Oracle 12c auf Windows Server 2012R2 geht dank Oracle Installer ohne größere Schwierigkeiten von der Hand. Die erste Verbindung direkt nach der Installation via SQL-Developer (direkt auf dem Server) scheiterte allerdings mit folgender Fehlermeldung:
ORA-12514: TNS: Listener kann in Connect-Deskriptor angegebenen Service aktuell nicht auflösen
auf Englisch:
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
Ein TNS-Ping konnte den Service auflösen. Die Konfiguration der „tnsnames.ora“ war also in Ordnung.
Ein direkter Connect ohne TNS via SQLPlus funktionierte ebenso. Das erreicht man mit dem Befehl „sqlplus / as sysdb“:
Im SQL-Developer ist diese Art der Verbindung ebenfalls möglich. Sie funktioniert natürlich nur direkt auf dem Server, auf dem die Datenbank läuft.
Ab hier ist klar, der Listener ist ansprechbar und die Datenbank läuft ebenso. Es funktioniert wohl die Verbindung von Listener zur Datenbank nicht wie gewollt.
Die Verbindung von Datenbank und Listener ist in er „listener.ora“ definiert. Diese befindet sich im Standard in folgendem Verzeichnis „C:\app\OracleUser\product\12.1.0\dbhome_1\NETWORK\ADMIN“.
Der Inhalt meiner Datei sah frisch nach der Installation wie folgt aus:
Hier war also Host direkt nach der Installation die IP-Adresse meines Testsystems eingetragen. Zum Test habe ich hier den Namen des Testservers eingetragen. Dabei habe ich auch gleich den (Windows-) Namen des Servers noch geändert. Der hatte noch einen kryptischen Namen von der Windows-Installation. Vielleicht war dies auch die Ursache der Fehlkonfiguration.
Nach einem Neustart war der Connect auch über TNS möglich und der ORA-12514 vergessen: