![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Использование утититы ORADIM для управления экземпляром
ORADIM – специальная утилита командной строки, используемая для работы с экземпляром БД в Windows. Она используется для ручного создания, модификации, удаления или запуска/останова экземляра и БД. Утилита расположена в каталоге \bin домашней директории.
Возможности ORADIM
Получить справку команд ORADIM можно следующим образом (или запустить ее безо всяких параметров):
oradim -? | -H | -HELP
Создание экземпляра
Для создания экземпляра используется следующий синтаксис:
oradim -NEW -SID sid | -SRVC srvc | -ASMSID sid | -ASMSRVC srvc [-SYSPWD pass] [-STARTMODE auto|manual] [-SRVCSTART system|demand] [-PFILE file | -SPFILE] [-SHUTMODE normal|immediate|abort] [-TIMEOUT secs] [-RUNAS osusr/ospass]
где
-NEW - команда, говорящая о создании нового экземпляра. -SID SID - имя создаваемого экземпляра. Если указывается этот параметр, не указывается параметр –SRVC. -SRVC service_name - имя сервиса ОС, который будет связан с создаваемым экземпляром, например, OracleService SID. Если указывается этот параметр, не указывается параметр -SID. -SYSPWD password - пароль для пользователя с ролью SYSDBA, который будет иметь привилегии на работу с экземпляром. Пароль хранится во внешнем файле. Данный параметр не обязателен, т.к. если его не указывать, будет использоваться аутентификация на уровне ОС. -STARTMODE auto, manual – определяет режим запуска экземпляра, автоматически или вручную. По умолчанию вручную (manual). -PFILE file | -SPFILE - текстовый / серверный файл параметров инициализации, используемый экземпляром. -TIMEOUT secs - устанавливает максимальное время ожидания остановки сервиса ОС. -SHUTMODE normal|immediate|abort - режим завершения работы базы данных -RUNAS osusr/ospass – имя пользователя OS, от имени которого будет запускаться Oracle service для базы данных
Для создания экземпляра с именем TEST10G, можно задать следующие команды:
oradim.exe -new -sid TEST10G -startmode manual –spfile
ORADIM - Запуск экземпляра
Чтобы запустить экземпляр с помощью ORADIM, используем следующую команду:
oradim -STARTUP -SID SID [-SYSPWD user_pwd ] [-STARTTYPE srvc | inst | srvc, inst] [-PFILE file | -SPFILE]
где
-STARTUP – команда запуска экземпляра. -SID SID – имя запускаемого экземпляра. -STARTTYPE srvc, inst – указывает, как будет запускаться экземпляр, с помощью сервиса ОС (srvc), или без (inst). -PFILE file | -SPFILE - текстовый / серверный файл параметров инициализации, используемый экземпляром.
Например,
oradim -STARTUP -SID TEST10G -STARTTYPE inst -PFILE pfile=" C: \oracle\admin\test10g\scripts\init.ora"
ORADIM - Остановка экземпляра
Для того, чтобы остановить экземпляр с помощью ORADIM, выполняется следующая команда:
oradim -SHUTDOWN -SID SID [-SYSPWD user_pwd ] [-SHUTTYPE srvc | inst | srvc, inst] [-SHUTMODE normal|immediate|abort]
где
-SHUTDOWN – команда остановки экземпляра. -SID SID – имя останавливаемого экземпляра. -SHUTTYPE srvc, inst – указывает режим остановки экземпляра: останавливать сервис ОС вместе с экземпляром или останавливать только экземпляр. Может быть указан один или два аргумента. -SHUTMODE normal|immediate|abort – режим завершения работы базы данных
Например,
oradim -SHUTDOWN -SID TEST10G -SHUTTYPE srvc, inst
ORADIM - Изменение экземпляра
В существующем экземпляре можно изменить ряд параметров без его пересоздания: имя экземпляра, режим остановки, пароль пользователя. Команда выглядит следующим образом:
oradim -EDIT -SID sid | -ASMSID sid [-SYSPWD pass] [-STARTMODE auto|manual] [-SRVCSTART system|demand] [-PFILE file | -SPFILE] [-SHUTMODE normal|immediate|abort] [-SHUTTYPE srvc|inst] [-RUNAS osusr/ospass] где
-EDIT – команда редактирования параметров экземпляра. -SID SID – имя изменяемого экземпляра. -STARTMODE a, m – новый режим запуска. -PFILE file | -SPFILE – новый файл параметров. -SHUTTYPE srvc, inst – новый режим остановки экземпляра.
Например,
oradim.exe -edit -sid TEST10G -startmode auto -srvcstart system
ORADIM - Удаление экземпляра
Чтобы удалить экземпляр с помощью ORADIM, используем следующий синтаксис:
oradim -DELETE -SID SID | -SRVC service_name
где
-DELETE – команда удаления экземпляра. -SID SID – имя удаляемого экземпляра. Можно указать этот параметр, либо параметр -SRVC. -SRVC service_name – имя сервиса ОС, который удаляется вместе с экземпляром. Можно указать этот параметр, либо параметр -SID.
Например,
oradim -DELETE -SID TEST10G
Дополнительные настройки запуска экземпляра
Если вы работаете с СУБД Oracle 10gпод Windows, иногда, при настройке автоматического запуска экземпляра со стартом ОС, возникает ошибка: ORA-12640: Authentication adapter initialization failed, которую можно обнаружить в файле oradim.log в каталоге ORACLE_HOME \database. Это может влиять и на запуск других модулей СУБД. Для исправления этой ситуации необходимо правильно настроить файл SQLNET.ORA, либо запускть БД вручную. В файле SQLNET.ORA необходимо модифицировать строку вида: sqlnet.authentication_services=(NTS) на sqlnet.authentication_services=(NONE) либо просто закомментировать ее.
Если сервис ОС, связанный с БД, запущен, а БД не открыта, иногда ее нужно открыть вручную с помощью sqlplus и сделать это пользователем с ролью SYSDBA.
В производственных системах запуск экземпляра осуществляется в автоматическом режиме вместе с запуском ОС. В среде Windows с экземпляром всегда сопоставлен некоторый сервис ОС, который может быть настроен на автоматический запуск. Параметры сервисов описаны в реестре в ключе: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services. Параметры сервисов можно также просмотреть через список сервисов (служб) ОС. Если сервис настроен на автоматический запуск, то по запуску сервиса при загрузке ОС будет предпринята попытка запустить экземпляр, и если в реестре в ключе HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1\ ORA_ SID _AUTOSTART будет стоять TRUE, то экземпляр будет запущен. В этом случае БД будет открываться автоматически. При старте экземпляра происходит считывание файла параметров инициализации (традиционного либо серверного). По умолчанию подразумевается использование серверного файла параметров (SPFILE). Расположение этого файла по умолчанию в среде Windows - ORACLE_HOME/database. Имя этого файла часто содержит имя экземпляра, например, spfile orcl. ora. Если вы хотите использовать текстовый файл параметров инициализации, необходимо выполнять команду STARTUP с опцией –PFILE. Например, STARTUP PFILE = C: \oracle\admin\orcl9\pfile\init.ora
Этапы запуска экземпляра и открытия БД
Экземпляр можно запускать в следующих режимах (в среде утилиты sqlplus или другого ПО, позволяющего осуществлять поэтапный запуск экземпляра и открытие БД):
- Запустить экземпляр без монтирования БД. Доступ к БД для пользователей запрещен. Этот режим используется для создания БД и пересоздания управляющих файлов. Команда STARTUP NOMOUNT. - Запустить экземпляр и монтировать БД, но не открывать ее. В этом режиме происходит обращение к управляющим файлам (информация о которых к этому моменту считана из файла инициализации) и проверяется состояние всех файлов БД. В этом режиме можно производить различные работы по упорядочиванию БД, но доступ для пользователей по-прежнему запрещен. Команда STARTUP MOUNT или STARTUP NOMOUNT + ALTER DATABASE MOUNT. - Запустить экземпляр, монтировать и открыть БД. По умолчанию БД открывается в неограниченном (unrestricted) режиме, что позволяет всем существующим в БД пользователям к ней присоединяться и работать. Если режим открытия – ограниченный (restricted), то присоединение могут осуществлять только пользователи с административными привилегиями. Команда STARTUP или STARTUP NOMOUNT + ALTER DATABASE MOUNT + ALTER DATABASE OPEN.
Команда утилиты sqlplus STARTUP без параметров выполняет все три стадии автоматически, приводя БД в рабочее состояние. Часто АБД должен выполнять операции в других режимах. Поэтому необходимо уметь приводить экземпляр и БД к вышеописанным промежуточным состояниям. Для того чтобы запустить экземпляр без монтирования БД, необходимо выполнить команду:
STARTUP NOMOUNT
Для запуска экземпляра с монтированием БД выполняется команда:
STARTUP MOUNT
Либо команда
ALTER DATABASE MOUNT;
если перед этим была выполнена команда STARTUP NOMOUNT. В этом режиме (смонтированной, но не открытой БД) можно переименовывать БД, переводить БД в режим ARCHIVELOG/NOARCHIVELOG, добавлять/удалять журналы повтора и т.д. После этой команды окончательное открытие БД осуществляет командой:
ALTER DATABASE OPEN;
Чтобы перевести БД из режима монтированной в режим открытой, выполняется команда:
ALTER DATABASE OPEN;
Рис. Этапы запуска экземпляра
Открыть БД в ограниченном режиме можно командой:
STARTUP RESTRICT
Чтобы перевести БД в такой режим, не обязательно перезапускать экземпляр и БД. Это можно сделать с помощью команды ALTER SYSTEM DISABLE/ENABLE RESTRICTED SESSION. В этом режиме с БД могут работать только пользователи с привилегией RESTRICTED SESSION.
Закрытие БД, останов экземпляра
Закрывать БД могут пользователи с привилегиями SYSDBA или SYSOPER. Для закрытия БД и останова экземпляра используется команда sqlplus SHUTDOWN. Режимы ее следующие:
SHUTDOWN NORMAL – запрещено создавать новые сессии, сервер Oracle ожидает окончания сессий работающих пользоватлей. Это самый безопасный, но и самый долгий способ останова. При следующем запуске экземпляра никаких восстановительных работ не проводится. SHUTDOWN IMMEDIATE – запрещено создавать новые сессии, запускать новые транзакции, сервер Oracle откатывает все незафиксированные транзакции, и завершает сессии пользователей. Применяется в случаях, когда нет возможности применить NORMAL (например, в ближайшее время предстоит отключение питания). При следующем запуске экземпляра никаких восстановительных работ не проводится. SHUTDOWN TRANSACTIONAL – запрещено создавать новые сессии, запускать новые транзакции, сервер Oracle дожидается завершения (фиксации либо отката) начатых до начала останова транзакций и отсоединяет не имеющих активных транзакций пользователей. Режим мягче, чем IMMEDIATE, но жестче, чем NORMAL. При следующем запуске экземпляра никаких восстановительных работ не проводится. SHUTDOWN ABORT – самый опасный для сохранности данных режим останова. Применяется только при крайней необходимости, когда нужно спасти хоть что-нибудь, либо все остальные режимы останова не приводят к результату. Все выполняющиеся работы прекращаются, транзакции не фиксируются и не откатываются. Пользователей отсоединяют от БД. При следующем запуске экземпляра будет выполнено возможное восстановление.
Пассивный режим работы БД
Существует возможность, не останавливая БД и перезапуская экземпляр, перевести БД в т.н. пассивное (quiesced) состояние, когда только пользователям SYS и SYSTEM разрешается работать в БД. Все остальные сессии переводятся в пассивное состояние, как бы замораживаются. Позже можно вернуть «замороженные» сессии к обычному режиму работы.
|