Veritabanlarının doğal süreçleri olarak kabul edilen deadlock lar Oracle üzerinde oluştuğunda aşağıdaki nacizane hatayı alırız.
ORA-00054 resource busy and acquire with NO WAIT specified
Bu durumda hata oluşan prosesi kill etmek yoluyla kaynağı boşaltabiliriz.Öncelikle aşağıdaki sorguyla lock oluşan işlemleri listeleyelim.
SELECT o.object_id,s.sid,s.serial#,o.object_type,o.object_name,
l.oracle_username,os_user_name,locked_mode,s.program
FROM v$locked_object l,dba_objects o,v$session s
WHERE l.object_id = o.object_id AND l.session_id=s.sid
Daha sonra da istediğimiz sessionları aşağıdaki sorguyla bitirebiliriz.
ALTER SYSTEM KILL SESSION 'sid,serial'
2 yorum:
hocam paylaşım için teşekkürler,şahsım adına işimi gördü :) emeğine sağlık. güzel bir blog olmuş
Hocam ellerine emeğine sağlık işimi gördü :)
Yorum Gönder