Помилка запуску Oracle (не вдалося відкрити файл параметра)


10

Я встановив сервер Oracle 11g на Ubuntu 12.10. Але я не можу запустити сервер. Коли я запускаю сервер, виникає така помилка:

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'

Як я можу вирішити це питання? Я думаю, що з'єднання не вдалося, оскільки цільовий хост або об'єкт не існує. Як можна вказати цільового хоста?

Запуск:

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

повертає:

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

Запуск echo $ORACLE_SIDнічого не відображає - порожній рядок.


ls initXE.oraне повернеться initxe.ora. Unix відрізняється від регістру.
чудо173

Відповіді:


10

Я бачу тут дві речі неправильні. Oracle намагається відкрити файл параметра в каталозі $ ORACLE_HOME / dbs у форматі "spfile" + $ ORACLE_SID + ".ora". Якщо він не може його знайти, він намагається відкрити "init" + $ ORACLE_SID + ".ora". Тут і є проблеми.

В силу того, що Oracle намагається відкрити файл параметра під назвою "initXE.ora", ваш SID повинен бути (або був в один момент) рівним "XE".

1) Це легка частина, тому спробуйте це спочатку. Оскільки (у ваших коментарях) echo $ORACLE_SIDнічого не дає, спробуйте встановити це.

export ORACLE_SID=XE

Потім спробуйте запустити Oracle знову.

2) У коментарях вище ви показуєте, що файл має назву "initxe.ora". Це справді назва файлу? Або ваша вставка в коментар якось зменшила обсяг результатів lsкоманди?

Причину, на яку я зазначаю це, є те, що Ubuntu (Linux) має залежну від регістру файлову систему. Отже, initxe.ora та initXE.ora - це фактично два різних файли. Тож якщо ваш коментар правильний, а файл має нижній регістр, замість цього потрібно встановити ORACLE_SID на "xe":

export ORACLE_SID=xe

Спробуйте це і подивіться, чи працює він.


6

Якщо це новий встановлений Oracle і у вас немає файлу параметрів initXE.ora тут /u01/app/oracle/product/11.2.0/xe/dbs/, це означає, що спочатку потрібно створити XE DB. Для цього спочатку запустіть /u01/app/oracle/product/11.2.0/xe/bin/createb.sh скрипт.


На місці, дякую! Сценарій займає віки, але робить свою справу. Вам потрібно запустити його як користувач oracleі зауважити, що це означає, що вам доведеться після цього скидати паролі системи / sys, також роблячи це.
Корм

1

Я раніше стикався з цим питанням.

Я зрозумів, що помилка може бути викликана тим, що файл не знайдено. Ви повинні запустити екземпляр Oracle, використовуючи повністю посилається файл, видавши таку команду:

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

0

Просто роби ls -altr. Якщо ви знайдете подібне ...

-rw-r - r-- 1 oracle oinstall 2637 березня 13 init.ora

... просто змінити власника:, chown -R oracle:dba init.oraа потім запустити.


-1

знайдіть "initXE.ora" у своєму каталозі oracle і використовуйте:
SQL> startup pfile=<directory_name>/initXE.ora


Ви можете додати детальну інформацію про те, чому це працює, або в чому полягає проблема в оригінальному плакаті.
Макс Вернон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.