Ошибка запуска 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 чувствителен к регистру.
miracle173

Ответы:


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/createdb.sh.


Пятно, спасибо! Сценарий занимает много времени, но делает свое дело. Вы должны запустить его от имени пользователя oracleи заметить, что это означает, что вам придется сбрасывать пароли system / sys впоследствии и при этом.
Фураж

1

Раньше я сталкивался с этой проблемой.

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

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

0

Просто делай ls -altr. Если вы найдете, как это ...

-rw-r - r-- 1 оракул oinstall 2637 13 марта init.ora

... просто смените владельца chown -R oracle:dba init.ora, затем запустите.


-1

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


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