Как правильно установить переменную ORACLE_HOME в Ubuntu 9.x?
У меня такая же проблема, как указано здесь: Как восстановить или изменить пароль Oracle sysdba, хотя я не потерял пароль, я дважды ввел его в configure script изначально, а затем, когда я пошел на логин (localhost: 8080/apex, пароль не принимался.
У меня ничего нет в базе данных, я просто хочу установить и использовать Oracle-XE. Я попытался apt-get удалить его дважды и переустановить, но если я попытаюсь запустить /etc/init.d/oracle-xe
configure снова, и я получу "Oracle Database 10g Express Edition уже настроен", несмотря на то, что второй раз удалил все папки, которые я смог найти для Oracle XE.
Я попытался запустить sqlplus "/as sysdba", но все, что я получаю, это:
Error 6 initializing SQL*Plus
Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory
Я попытался установить переменную через export
. (также попробовал set
).
Пробовал: export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/sqlplus
и все подкаталоги этого. Такая же ошибка каждый раз.
Каков должен быть установлен ORACLE_HOME? Единственная ссылка, которую я видел, либо просто сказать, либо сказать выше, либо номер версии, то "/db_1". Я не делаю db_1.
Сообщите мне, если вам нужно какое-либо разъяснение. Я не понимаю, что я сделал не так в этом процессе.
Ответы
Ответ 1
Обычно проблема с msb файлом не найдена в результате проблемы с настройкой среды, но в вашем случае я немного подозрительно отношусь к установке (я никогда не использовал метод apt-get + configure).
Чтобы проверить работоспособность установки:
-
ORACLE_HOME
следует установить путь к каталогу на один уровень выше каталога bin
, где найден исполняемый файл sqlplus
.
- В
$ORACLE_HOME/sqlplus/mesg
должны присутствовать файлы
.msb
Должны быть сотни (не уверены в количестве с XE) файлов .msb
под $ORACLE_HOME
(попробуйте find $ORACLE_HOME -name "*.msb" -print
, чтобы показать их)
Ваш PATH должен включать $ORACLE_HOME/bin
.
Все файлы под ORACLE_HOME
должны принадлежать user:oracle group:dba
.
Ответ 2
У меня была такая же проблема. В моей домашней папке у меня есть script с именем sqlplus.sh, который позаботится об этом для меня, содержащий:
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
export ORACLE_HOME
ORACLE_SID=XE
export ORACLE_SID
NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`
export NLS_LANG
PATH=$ORACLE_HOME/bin:$PATH
export PATH
sqlplus /nolog
Ответ 3
Имела ту же проблему,
Все, что мне нужно было сделать, чтобы установить переменную оболочки оракула:
. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
Sorterd!
Ответ 4
Вам также нужно установить LANG, искать файлы с именем "sp1 *.msb" и установить, например, экспорт LANG = us, если вы найдете имя файла sp1us.msb. Сообщение об ошибке может быть лучше:)
Ответ 5
ORACLE_HOME должен находиться на верхнем уровне структуры каталога Oracle для установки базы данных. С этого момента Oracle знает, как найти все другие необходимые ему файлы. Например, сообщение об ошибке, которое вы получаете, связано с тем, что Oracle не может найти файлы сообщений для сообщения об ошибках (должен находиться в разных каталогах mesg ниже дома оракула. Вместо приведенного выше значения, я попробую
export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0
Ответ 6
Как только я также получил тот же самый тип ошибки.
то есть:
C:\oracle\product\10.2.0\db_2>SQLPLUS SYS AS SYSDBA
Error 6 initializing SQL*Plus
Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory
Эта ошибка возникает, когда исходный путь неправильно установлен. Чтобы исправить это, если вы используете Windows, запустите следующий запрос:
C:\oracle\product\10.2.0\db_2>SET ORACLE_HOME=C:\oracle\product\10.2.0\db_2
C:\oracle\product\10.2.0\db_2>SQLPLUS SYS AS SYSDBA
SQL*Plus: Release 10.2.0.3.0 - Production on Tue Apr 16 13:17:42 2013
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Или, если вы используете Linux, замените set
на export
для указанной выше команды следующим образом:
C:\oracle\product\10.2.0\db_2>EXPORT ORACLE_HOME='C:\oracle\product\10.2.0\db_2'
C:\oracle\product\10.2.0\db_2>SQLPLUS SYS AS SYSDBA
SQL*Plus: Release 10.2.0.3.0 - Production on Tue Apr 16 13:17:42 2013
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Ответ 7
Это правильный способ устранить эту ошибку.
экспорт ORACLE_HOME =/u01/app/oracle/product/10.2.0/db_1
sqlplus/as sysdba
Ответ 8
После установки сервера weblogic и форм на машине Linux мы встретили некоторые проблемы с инициализацией sqlplus
и tnsping
. Мы изменили bash_profile
таким образом, что form_home действует как дом оракула. Он отлично работает, обе команды
(sqlplus и tnsping) являются исполняемыми для пользователя oracle
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export JAVA_HOME=/mnt/software/java/jdk1.7.0_71
export ORACLE_HOME=/oracle/Middleware/Oracle_FRHome1
export PATH=$PATH:$JAVA_HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=/oracle/Middleware/Oracle_FRHome1/lib
export FORMS_PATH=$FORMS_PATH:/oracle/Middleware/Oracle_FRHome1/forms:/oracle/Middleware/asinst_1/FormsComponent/forms:/appl/myapp:/home/oracle/myapp
Ответ 9
set <ORACLE_HOME> path variable
Пример
path ORACLE_HOME
Значение: C:\oraclexe\app\oracle\product\10.2.0\server
![enter image description here]()