powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ORA-00054 - как снять блокировку?
4 сообщений из 4, страница 1 из 1
ORA-00054 - как снять блокировку?
    #39769082
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Редактировал в TOAD содержимое таблички, очищал в null поле в одной строке.
В этот момент почему-то TOAD завис.
Процесс на ПК я прибил, подключился заново, но теперь ранее редактируемая запись заблокирована.
Блокировку я нашел в v$locked_object, тип блокировки LOCKED_MODE=3 - Row-X (SX).
Как ее можно снять?
Обычно для этого нужно закрыть транзакцию, но у меня процесс, где эта транзакция начиналась, уже закрыт.
...
Рейтинг: 0 / 0
ORA-00054 - как снять блокировку?
    #39769085
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поищи осиротевшую сессию
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Select  lk.SID, se.username, to_single_byte(se.OSUser) osuser, to_single_byte(se.Machine) as machine, 
       DECODE (lk.TYPE, 'TX', 'Transaction', 'TM', 'DML', 'UL', 'PL/SQL User Lock', lk.TYPE) lock_type,
       DECODE (lk.lmode, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR (lk.lmode)) mode_held,
       DECODE (lk.request, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR (lk.request)) mode_requested,
       TO_CHAR (lk.id1) lock_id1, TO_CHAR (lk.id2) lock_id2, ob.owner,
       ob.object_type, ob.object_name, decode(lk.Block, 0, 'No', 1, 'Yes', 2, 'Global') block, se.lockwait
FROM   v$lock lk, dba_objects ob, v$session se
WHERE  lk.TYPE IN ('TX', 'TM', 'UL')
AND    lk.SID = se.SID
AND    lk.id1 = ob.object_id (+);

...
Рейтинг: 0 / 0
ORA-00054 - как снять блокировку?
    #39769089
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.,

убить сессию (если Вы уверенны что ето ваша подвисшая)

.....
stax
...
Рейтинг: 0 / 0
ORA-00054 - как снять блокировку?
    #39769112
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сессию я уже нашел.

Staxубить сессию (если Вы уверенны что ето ваша подвисшая)
Да, нужно убить сессию и следующий вопрос был бы, как это сделать правильно.
Но не потребовалось, Oracle сам ее уже прибил через несколько минут после того, как я написал в форум.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ORA-00054 - как снять блокировку?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]