Errore di avvio Oracle (impossibile aprire il file dei parametri)


10

Ho installato il server Oracle 11g su Ubuntu 12.10. Ma non riesco ad avviare il server. Quando avvio il server, si verifica il seguente errore:

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'

Come posso risolvere questo problema? Penso che la connessione non sia riuscita perché l'host o l'oggetto di destinazione non esiste. Come si può specificare un host target?

In esecuzione:

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

ritorna:

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

L'esecuzione echo $ORACLE_SIDnon mostra nulla: una riga vuota.


ls initXE.oranon tornerà initxe.ora. Unix fa distinzione tra maiuscole e minuscole.
miracolo173,

Risposte:


10

Vedo due cose sbagliate qui. Oracle tenta di aprire un file di parametri nella directory $ ORACLE_HOME / dbs con il formato "spfile" + $ ORACLE_SID + ".ora". Se non riesce a trovarlo, prova ad aprire "init" + $ ORACLE_SID + ".ora". Questo è dove si trovano i problemi.

In virtù del fatto che Oracle sta tentando di aprire un file di parametri denominato "initXE.ora", il SID deve essere (o era ad un certo punto) uguale a "XE".

1) Questa è la parte facile, quindi prova prima. Dato che (nei tuoi commenti) echo $ORACLE_SIDnon si ottiene nulla, prova a impostarlo.

export ORACLE_SID=XE

Quindi prova a riavviare Oracle.

2) Nei tuoi commenti sopra, mostri che il file si chiama "initxe.ora". È davvero questo il nome del file? O hai incollato in un commento in qualche modo minuscolo l'output del lscomando?

Il motivo per cui lo sottolineo è che Ubuntu (Linux) ha un filesystem sensibile al maiuscolo / minuscolo. Quindi initxe.ora e initXE.ora sono in realtà due file diversi. Quindi, se il tuo commento è corretto e il file è in lettere minuscole, ti consigliamo di impostare invece ORACLE_SID su "xe":

export ORACLE_SID=xe

Prova e vedi se funziona.


6

Se si tratta di un nuovo Oracle installato e non si dispone del file di parametri initXE.ora qui /u01/app/oracle/product/11.2.0/xe/dbs/, ciò significa che è necessario creare prima XE DB. Per farlo, esegui prima lo script /u01/app/oracle/product/11.2.0/xe/bin/createdb.sh.


Grazie, grazie! La sceneggiatura richiede secoli, ma fa il trucco. È necessario eseguirlo come utente oraclee notare che ciò significa che sarà necessario reimpostare le password di sistema / sys anche in seguito.
Foraggio,

1

Ho affrontato questo problema.

Mi sono reso conto che l'errore può essere causato dal mancato rilevamento del file. È necessario avviare l'istanza Oracle utilizzando un file completo con riferimento emettendo il comando seguente:

SQL> startup pfile=<your pfile full path here>

0

Fallo e basta ls -altr. Se trovi così ...

-rw-r - r-- 1 oracolo oinstall 2637 mar 13 init.ora

... basta cambiare il proprietario chown -R oracle:dba init.ora:, quindi l'avvio.


-1

trova "initXE.ora" nella directory di Oracle e utilizzato:
SQL> startup pfile=<directory_name>/initXE.ora


Potresti voler aggiungere alcuni dettagli sul perché questo funziona o su quale sia il problema con la domanda del poster originale.
Max Vernon,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.