[ОТВЕТИТЬ]
10.05.2007 16:02
Stels
 
В документации сказано :
"Для корректного расчета товародвижения необходимо, чтобы в процессе переноса таблиц не вносились изменения в базу данных. То есть на время переноса всем остальным пользователям необходимо выйти из ТС.
В процессе расчета товародвижения оперативная работа пользователей может осуществляться в обычном режиме, кроме получения отчетов, требующих рассчитанную себестоимость (т.к. эти отчеты могут дать некорректные результаты). В момент расчета ТД запрещается производить какие-либо операции с таблицами; не допускается ни одной активной сессии, кроме Сервера СМ-2000 и Административного модуля быть не должно также, как и работающих заданий (job). В противном случае возможно нарушение целостности индексов"

Как посмотреть работает ли кто-нибудь в данный момент с базой?
Есть ли какой-то механизм по принудительному блокированию пользователей?
Или делать все операции ночью?
А если кто-то не выйдет из программы ?

Вобщем, поделитесь опытом.
А то буду первый раз делать данную операцию (т.к. установили программу не так давно)
10.05.2007 16:10
Propil
 
Олег написал программу для автоматического расчета товародвижения, здесь обсуждаем:
https://olegon.ru/showthread.php?t=94
Посмотреть, кто работает, можно в DBA-Studio (сессии), там можно и закрыть сессию.
Лучше расчет делать ночью, после того, как бэкап сделает сервер.
10.05.2007 16:11
OlegON
 
Ну и путаница... Хоть и с моих слов писали, но понять половину не могу сам.
Для просмотра списка сессий - соответствующий раздел в DBA Studio или Enterprise manager
Принудительная блокировка пользователей отсутствует, можно попробовать рестартануть сервис базы, после чего сразу запустить расчет (Сервер СМ тоже лучше ребутнуть, чтобы подключился быстрее).
Лучше всего делать это ночью, не забывая, что есть время для бекапов.
Если кто-то не выйдет из программы, например, кассовый сервер, то получишь сообщение о невозможности заблокировать базу. Лучше ребутить сервис базы, если готов к воплям недоделавших свои накладные. Они будут потеряны.
10.05.2007 16:14
kadr
 
Есть два способа:
1. Перед расчётом перезапускать службу БД и службы СМ (считаю некорректным, т.к. из оперативки теряются разобранные SQL-предложения)
2. Использовать административный ресурс, чтобы вечером перед расчётом все закрывали СМ, в случае невыполнения во всеуслышание говорить кто виноват в том, что ТД не рассчиталось в положенное время
10.05.2007 16:17
OlegON
 
Цитата:
kadr Есть два способа:
1. Перед расчётом перезапускать службу БД и службы СМ (считаю некорректным, т.к. из оперативки теряются разобранные SQL-предложения)
Все равно большинство холодный бекап использует... А на сам процесс расчета это не влияет... Так что ерунда...
10.05.2007 16:27
Stels
 
Цитата:
OlegON Для просмотра списка сессий - соответствующий раздел в DBA Studio или Enterprise manager
эээ ... а это что за звЭри ?
10.05.2007 16:29
OlegON
 
Оракловые тулзы по управлению базой... Должны были показываться на обучении. Можно бы и в доку админа заглянуть.
10.05.2007 16:33
Stels
 
Цитата:
OlegON Оракловые тулзы по управлению базой... Должны были показываться на обучении. Можно бы и в доку админа заглянуть.
ок ... почитаем
11.05.2007 07:28
kadr
 
Цитата:
OlegON Все равно большинство холодный бекап использует... А на сам процесс расчета это не влияет... Так что ерунда...
Вне зависимости от того кто, что и как использует моё мнение не изменится*160
11.05.2007 11:09
Stels
 
Уж извините за ламерские вопросы

В документации прочитал:
1.Откройте программу DBA Studio (Пуск (Start) → Программы (Programs) → Oracle-def_home → Database Administration → DBA Studio)

Нет у меня Database Administration.

версия Oracle 9i (как я понял из файла Release Documentation )

Есть Enterprise Management Packs ; Enterprise Management Packs
Но там туева куча вложений

Не сочтите за труд: ткните носом (ну там выбери в меню то-то и то-то)
11.05.2007 11:32
Stels
 
Цитата:
inna Enterprise Manager Console
Спасибо.

Network/Databases/<имя базы>/Sessions - сдесь, как я понял, и можно увидеть работает ли кто с базой?
11.05.2007 11:38
OlegON
 
Да, а еще можно запустить SQL Plus и сделать
Цитата:
select * from v$session
, зайдя из под sys. Не так удобно и красиво выглядит на первое время, но приучает к использованию консоли, что в разы полезнее.
11.05.2007 11:40
kadr
 
Да там можно, а можно и так
Код:
SELECT username, status, osuser, machine  FROM v$session
в SQL*Plus
11.05.2007 11:47
Stels
 
Цитата:
OlegON Да, а еще можно запустить SQL Plus и сделать , зайдя из под sys. Не так удобно и красиво выглядит на первое время, но приучает к использованию консоли, что в разы полезнее.
Цитата:
kadr Да там можно, а можно и так
Код:
SELECT username, status, osuser, machine  FROM v$session
в SQL*Plus
Спасибо! :) За понимание
Опции темы


Часовой пояс GMT +3, время: 10:22.

 

Форум сделан на основе vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.