Letzte Woche sollte ich für ein Kundenprojekt einen Oracle Application Express Server als Entwicklungsumgebung aufsetzen, um anschließend eine Schnittstelle mit einem Domino Server zu realisieren. Dazu sollten die Live-Daten vom Produktivserver auf den neu aufgesetzten Server kopiert werden.
An sich ist das keine große Sache. Als erstes installiert man den Oracle Application Express Server und trägt sich selber in die Windowsgruppe ORA_DBA ein. Nun kopiert man das Flashbackup von dem Originalserver auf den neu installierten Server an dieselbe Stelle im Verzeichnispfad z.B. C:\oraclexe\app\oracle\flach_recovery_area (Default-Pfad).
Als nächstes führt man die Restore.exe im Pfad C:\oraclexe\app\oracle\product\10.2.0\server\BIN aus.
Nun wird automatisch
- der Server heruntergefahren,
- das Backup eingespielt und
- der Server neu gestartet.
Ob alles geklappt hat, kann man im Browser unter der Adresse http://127.0.0.1:8080/apex/ überprüfen. Hier kann man sich nun wie beim Originalserver anmelden.

Abb. 1: Anmeldung am Oracle Application Express Server
Nun kommt der eigentliche Knackpunkt: Es werden beim Zurückspielen des Backups leider alle Einstellungen des Originalservers übertragen, so auch der Servername für die Datenbank und der Listener. Dies führte in unserem Fall dazu, dass der Listener ohne zuerst erkennbaren Grund nicht mehr startete. Hier kann uns das Logfile des Listener weiterhelfen, welches unter dem folgenden Pfad zu finden ist:
C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\log\listener.txt (Vorsicht, die Datei kann sehr groß sein!)
Hier sind uns folgende Zeilen entgegengesprungen:
Gestartet mit Pid=1176
Listen auf: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC_FOR_XEipc)))
Fehler beim Hören auf: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ORIGINALSERVERNAME)(PORT=1521)))
TNS-12545: CONNECT nicht erfolgreich, da Ziel-Host oder -Objekt nicht vorhanden
TNS-12560: TNS: Fehler bei Protokolladapter
TNS-00515: CONNECT nicht erfolgreich, da Ziel-Host oder -Objekt nicht vorhanden
32-bit Windows Error: 1001: Unknown error
Hört nicht mehr auf: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC_FOR_XEipc)))
Um dieses Problem zu beheben, müssen wir in zwei Konfigurationsdateien den Servernamen des Originalservers mit dem Namen des neu installierten Servers ersetzen. Datei 1 ist die Konfiguration für den Datenbank-Service:
C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN\tnsnames.ora
Hier gibt es den Punkt:
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = "SERVERNAME")(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
Hier sollte letztendlich im Bereich SERVERNAME im einfachsten Fall der Name des lokalen Rechners stehen.
Als zweites sollte man sich im selben Pfad die Datei „Listener.ora“ vornehmen. Hier gibt es denselben Punkt:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = "SERVERNAME")(PORT = 1521))
)
)
Auch hier sollte der Bereich SERVERNAME den Namen des lokalen Rechners enthalten. Sonst kann es passieren, dass der Listener immer noch versucht, sich mit dem Originalserver zu verbinden.
Ich hoffe der Artikel erspart euch eine aufwendige Suche durch die Oracle Foren.