Błąd uruchamiania Oracle (nie można otworzyć pliku parametrów)


10

Zainstalowałem serwer Oracle 11g na Ubuntu 12.10. Ale nie mogę uruchomić serwera. Podczas uruchamiania serwera pojawia się następujący błąd:

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'

Jak mogę rozwiązać ten problem? Myślę, że połączenie nie powiodło się, ponieważ docelowy host lub obiekt nie istnieje. Jak określić hosta docelowego?

Bieganie:

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

zwroty:

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

Uruchomienie echo $ORACLE_SIDnic nie wyświetla - pusta linia.


ls initXE.oranie wróci initxe.ora. W Uniksie rozróżniana jest wielkość liter.
cud 173

Odpowiedzi:


10

Widzę tutaj dwie rzeczy źle. Oracle próbuje otworzyć plik parametrów w katalogu $ ORACLE_HOME / dbs w formacie „spfile” + $ ORACLE_SID + „.ora”. Jeśli nie może go znaleźć, próbuje otworzyć „init” + $ ORACLE_SID + „.ora”. Tutaj są problem (y).

Z uwagi na fakt, że Oracle próbuje otworzyć plik parametrów o nazwie „initXE.ora”, Twój identyfikator SID musi być (lub był w jednym punkcie) równy „XE”.

1) To jest łatwa część, więc spróbuj najpierw. Ponieważ (w twoich komentarzach) echo $ORACLE_SIDnic nie daje, spróbuj go ustawić.

export ORACLE_SID=XE

Następnie spróbuj ponownie uruchomić Oracle.

2) W powyższych komentarzach pokazujesz, że plik ma nazwę „initxe.ora”. Czy to naprawdę nazwa pliku? A może wklejałeś do komentarza jakoś małymi literami wyniku lspolecenia?

Powodem, dla którego zwracam na to uwagę, jest to, że Ubuntu (Linux) ma system plików z rozróżnianiem wielkości liter. Więc initxe.ora i initXE.ora to tak naprawdę dwa różne pliki. Więc jeśli twój komentarz jest poprawny, a plik ma małe litery, zamiast tego ustaw ORACLE_SID na „xe”:

export ORACLE_SID=xe

Spróbuj i sprawdź, czy to działa.


6

Jeśli jest to nowy zainstalowany Oracle i nie masz pliku parametrów initXE.ora tutaj /u01/app/oracle/product/11.2.0/xe/dbs/, oznacza to, że musisz najpierw utworzyć XE DB. Aby to zrobić, najpierw uruchom skrypt /u01/app/oracle/product/11.2.0/xe/bin/createdb.sh.


Spot on, dziękuję! Skrypt trwa wieki, ale załatwia sprawę. Musisz jednak uruchomić go jako użytkownik oraclei pamiętać, że oznacza to, że będziesz musiał zresetować hasła systemowe / systemowe także podczas tej operacji.
Pasza

1

Zwykłem zmierzyć się z tym problemem.

Zrozumiałem, że błąd może być spowodowany nie odnalezieniem pliku p. Musisz uruchomić instancję Oracle przy użyciu w pełni przywołanego pliku p, wydając następującą komendę:

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

0

Po prostu zrób ls -altr. Jeśli znajdziesz tak ...

-rw-r - r-- 1 oracle oinstall 2637 13 marca init.ora

... wystarczy zmienić właściciela chown -R oracle:dba init.ora:, a następnie uruchomienie.


-1

znajdź „initXE.ora” w swoim katalogu Oracle i użyj:
SQL> startup pfile=<directory_name>/initXE.ora


Możesz dodać kilka szczegółów na temat tego, dlaczego to działa, lub na czym polega problem z pytaniem oryginalnego plakatu.
Max Vernon
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.