Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Oracle > startup/shutdown


Автор: batigoal 21.5.2006, 17:00
Поставил себе Oracle 10g Express Edidtion.

В целях экономии ресурсов, решил его погасить, пока не нужен. Законнектился из командной строки, сделал shotdown. Процесс oracle.exe умер, всё хорошо. Но, как говорится в анекдоте, "есть нюанс" smile
При таком шатдауне не останавливаются процессы MTSRecoveryService и еще что-то.

Есть ли способ останавливать инстанс полностью, вместе со вспомогательными процессами?

Пытался воспользоваться батником <ORAHOME>\bin\StopDb.bat, но он действует так же. 

Автор: Sqlninja 21.5.2006, 18:15
На какую ОС Вы его? 

Автор: Sqlninja 21.5.2006, 18:53
Скорее всего - на виндовс. В общем - смысл в следующем:
Эта штука OraMTS - удалаяется только из одного интерфейса - Oracle Manager. (визуальный интерфейс, ярлык создается в меню). Если сделать это по другому - возникнут нарушения в целостности транзакций, который потом прийдется возможно долго и упорно исправлять ручками.

Зайдите в Oracle Manager, найдите там службу like %MTS% и грохните ее (правыйклик-delete).

А, Вам остановить? - тоже самое, только Stop.

 

Автор: batigoal 21.5.2006, 21:53
Цитата(Sqlninja @  21.5.2006,  19:53 Найти цитируемый пост)
Скорее всего - на виндовс.

Да, именно так.

Цитата(Sqlninja @  21.5.2006,  19:53 Найти цитируемый пост)
Зайдите в Oracle Manager, найдите там службу like %MTS% и грохните ее (правыйклик-delete).

Как я понимаю, в XE ведь его нету вообще, из визуального интерфейса - только набор веб-страниц, и я там не нашел ничего о работе с сервисами.

Цитата(Sqlninja @  21.5.2006,  19:53 Найти цитируемый пост)
Если сделать это по другому - возникнут нарушения в целостности транзакций, который потом прийдется возможно долго и упорно исправлять ручками.

В принципе, для меня это несущественно - эта инсталляция нужна только лично мне, для изучения.

Так что, видимо, буду делать так: делать shutdown, затем через виндовые Services стопить вручную остальные службы. При старте - делать в обратном порядке. Если вдруг какие-то нестыковки и произойдут, ничего страшного не случится.

Добавлено @ 21:54 
Заглянул сейчас в батники. Вот их содержимое:

StartDB.bat
Код

net start OracleMTSRecoveryService
net start OracleXETNSListener
net start OracleServiceXE
@oradim -startup -sid XE -starttype inst > nul 2>&1


StopDB.bat
Код

net stop OracleServiceXE


Странно... 

Автор: Sqlninja 21.5.2006, 22:06
Так добавьте в StopDB.bat

net stop OracleMTSRecoveryService
net stop OracleXETNSListener

наверное добавили уже. 

Автор: batigoal 22.5.2006, 08:27
Да, но не могу пока понять, почему разработчики не сделали этого сами - может, есть какие-то на то причины...

И последний вопросик, немного не в тему: OracleXETNSListener - это лисенер для базы с SID XE (она была создана при инсталляции), или для всех баз? 

Автор: Sqlninja 22.5.2006, 11:36
Один listener может зарегистрировать у себя несколько служб, смотря как настроите, по Вашим потребностям . Вы загляните в файл listener.ora и увидите что он там себе понаделал. smile 

Автор: batigoal 22.5.2006, 12:15
Ок, вечером так и сделаю.

Спасибо за помощь. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)