Пользователь Oracle отключен без фиксации / отката, больше не может изменять базу данных - PullRequest
5 голосов
/ 09 мая 2011

Пользователь вошел в базу данных Oracle, с которой я работаю, вышел без фиксации или отката, и теперь моя база данных не может быть изменена, она заблокирована.

Я пытался

 rollback

но это не сработало.

Есть мысли? Спасибо.

Ответы [ 2 ]

9 голосов
/ 09 мая 2011

Невозможно выйти из базы данных Oracle без фиксации или отката.Возможно, что клиентское приложение аварийно завершилось или было принудительно завершено, и у него не было возможности выйти из системы, оставив сеанс на сервере, который удерживает некоторые блокировки.Если это так, администратор БД должен убить этот сеанс.

Если вы администратор БД и не уверены, какой сеанс необходимо убить, вы можете выполнить следующий запрос, чтобы получить информацию оразличные сеансы, которые удерживают блокировки, которые блокируют другие сеансы

SELECT ses.sid, ses.serial#, ses.username, ses.program, ses.osuser, ses.machine
  FROM v$session ses,
       dba_blockers blk
 WHERE blk.holding_session = ses.sid

Как только вы определили, какой сеанс (ы) нужно убить

ALTER SYSTEM KILL SESSION '<<sid>>, <<serial#>>'
3 голосов
/ 09 мая 2011

Если сеанс не был откат явно, если сервер базы данных больше не может связаться с клиентом, его действие будет автоматически откатано, а затем завершит сеанс.

Сервер часто бывает доволен, если клиент не обращается к нему часами подряд. Посмотрите, есть ли у вас установлен SQLNET.EXPIRE_TIME на сервере. Если это ненулевое значение, то сколько минут он будет ждать, прежде чем проверять, не разорвано ли клиентское соединение. Если он равен нулю, он не будет проверять и будет знать только, если обнаружит, что клиент мертв при ответе на запрос клиента.

Кроме того, откат может занять некоторое время. Если много работы сделано, это может занять часы. Все, что ожидает в этом сеансе, будет продолжать ждать, пока этот откат не будет завершен

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...