Oracle-Startfehler (Parameterdatei konnte nicht geöffnet werden)

10

Ich habe den Oracle 11g-Server unter Ubuntu 12.10 installiert. Aber ich kann den Server nicht starten. Beim Starten des Servers tritt der folgende Fehler auf:

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/xe/dbs/initXE.ora'

Wie kann ich dieses Problem lösen? Ich denke, die Verbindung ist fehlgeschlagen, weil der Zielhost oder das Zielobjekt nicht vorhanden ist. Wie kann ein Zielhost angegeben werden?

Laufen:

$ ls -latr /u01/app/oracle/product/11.2.0/xe/dbs/initXE.ora

kehrt zurück:

-rw-r--r-- 1 oracle dba 2637 Mar 13 17:07 /u01/app/oracle/product/11.2.0/xe/dbs/initxe.ora 

Laufen echo $ORACLE_SIDzeigt nichts an - eine leere Zeile.

Praneeth Pj
quelle
ls initXE.orawird nicht zurückkehren initxe.ora. Unix unterscheidet zwischen Groß- und Kleinschreibung.
Wunder173

Antworten:

10

Ich sehe hier zwei Dinge falsch. Oracle versucht, eine Parameterdatei im Verzeichnis $ ORACLE_HOME / dbs mit dem Format "spfile" + $ ORACLE_SID + ".ora" zu öffnen. Wenn es es nicht finden kann, versucht es, "init" + $ ORACLE_SID + ".ora" zu öffnen. Hier liegen die Probleme.

Aufgrund der Tatsache, dass Oracle versucht, eine Parameterdatei mit dem Namen "initXE.ora" zu öffnen, muss Ihre SID gleich "XE" sein (oder war an einem Punkt).

1) Dies ist der einfache Teil, versuchen Sie es also zuerst. Da (in Ihren Kommentaren) ein echo $ORACLE_SIDErgebnis nichts ergibt, versuchen Sie es einzustellen.

export ORACLE_SID=XE

Versuchen Sie dann erneut, Oracle zu starten.

2) In Ihren obigen Kommentaren zeigen Sie, dass die Datei "initxe.ora" heißt. Ist das wirklich der Name der Datei? Oder hat das Einfügen in einen Kommentar die Ausgabe des lsBefehls in Kleinbuchstaben geschrieben ?

Der Grund, warum ich darauf hinweise, ist, dass Ubuntu (Linux) ein Dateisystem hat, bei dem zwischen Groß- und Kleinschreibung unterschieden wird. Initxe.ora und initXE.ora sind also zwei verschiedene Dateien. Wenn Ihr Kommentar korrekt ist und die Datei in Kleinbuchstaben geschrieben ist, sollten Sie stattdessen Ihre ORACLE_SID auf "xe" setzen:

export ORACLE_SID=xe

Versuchen Sie das und sehen Sie, ob es funktioniert.

Aaron
quelle
6

Wenn dies ein neu installiertes Oracle ist und Sie hier keine initXE.ora-Parameterdatei haben /u01/app/oracle/product/11.2.0/xe/dbs/, bedeutet dies, dass Sie zuerst XE DB erstellen müssen. Führen Sie dazu zuerst das Skript /u01/app/oracle/product/11.2.0/xe/bin/createdb.sh aus.

fen1ksss
quelle
Genau richtig, danke! Das Skript dauert ewig, macht aber den Trick. Sie müssen es jedoch als Benutzer ausführen oracleund beachten, dass dies bedeutet, dass Sie die System- / Systemkennwörter danach auch zurücksetzen müssen.
Futter
1

Früher habe ich mich diesem Problem gestellt.

Ich habe festgestellt, dass der Fehler dadurch verursacht werden kann, dass die Pfile nicht gefunden wird. Sie müssen die Oracle-Instanz mit einer vollständig referenzierten Pfile starten, indem Sie den folgenden Befehl eingeben:

SQL> startup pfile=<your pfile full path here>
Sophart Phun
quelle
0

Tu es einfach ls -altr. Wenn Sie so finden ...

-rw-r - r-- 1 Orakel oinstall 2637 13. März init.ora

... einfach den Besitzer wechseln : chown -R oracle:dba init.ora, dann starten.

Javed Moazzam
quelle
-1

Suchen Sie "initXE.ora" in Ihrem Oracle-Verzeichnis und verwenden Sie:
SQL> startup pfile=<directory_name>/initXE.ora

An einer
quelle
Vielleicht möchten Sie einige Details hinzufügen, warum dies funktioniert oder wo das Problem mit der Frage des Originalplakats liegt.
Max Vernon