SQL*PLUS выдаёт ошибку:
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Process ID: 0
Session ID: 0 Serial number: 0
При старте БД:
sudo service oracle-xe start
Starting Oracle Net Listener.
Starting Oracle Database 11g Express Edition instance.
Failed to start Oracle Net Listener using /u01/app/oracle/product/11.2.0/xe/bin/tnslsnr and Oracle Express Database using /u01/app/oracle/product/11.2.0/xe/bin/sqlplus.
Ставила по этой инструкции
Но пропустила шаг:
sudo rm -rf /dev/shm
sudo mkdir /dev/shm
потому, что при простой замене имени каталога /dev/shm у меня пропал интернет. Просто так удалять системные файлы, боязно. Теперь не могу удалить /dev/shm, т.к. он занят.
Ответ
Сообщение об ошибке:
ORA-27101: shared memory realm does not exist
означает, что процесс (обычно listener, sqlplus) не может подсоединится к System Global Area (SGA).
В основном две причины:
SGA действительно не существует, так как инстанция БД не стартовала.
Стартуйте инстанцию БД под пользователeм oracle
$ echo startup|sqlplus / as sysdba
Shared memory segment Id для подключения к SGA генерируется из значений переменных окружения: $ORACLE_SID + $ORACLE_HOME. Если эти значения не соответствуют тем, которые были использованы при запуске инстанции БД, то будет выше указаная ошибка, так как такого сегмента не существует. Проверте переменные окружения:
env | egrep -i "oracle_(sid|home)"
Значения $ORACLE_SID + $ORACLE_HOME, которые были использованы при установке
хранятся в /etc/oratab и устанавливаются так:
export ORACLE_SID=orcl; . oraenv
Например, если попытаться установить вручную и ошибиться:
$ echo exit|sqlplus -l user/pass
Connected to:
Oracle Database 11g Release 11.2.0.1.0 - Production
$ ORACLE_HOME=$ORACLE_HOME/; test -d $ORACLE_HOME && echo "directory exists"
directory exists
Всё хорошо, директория существует и sqlplus из неё будет вызываться, но незначащий слэш даст при подсчёте shmid другое значение:
$ echo exit|sqlplus -l user/pass
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory
Комментариев нет:
Отправить комментарий