MedDataOracleSQL Kodları
Trend

Oracle’da Kilitlenen Tabloları Açın

Bazen veritabanından bir veri çekerken yanıt alamayız. O sırada ilgili
tablo başka bir işlem tarafından güncellenmektedir ve veritabanı
sunucusu bize en güncel halini sunabilmek için bizi bekletir.

Oracle üzerinde bu kilitli tabloları görüntüleyebilmek için aşağıdaki
sorguyu kullanabilirsiniz.


select c.owner, c.object_name, c.object_type, b.sid, b.serial#, b.status, b.osuser, b.machine
from v$locked_object a, v$session b, dba_objects c
where b.sid = a.session_id
and a.object_id = c.object_id;

Bu durumda en kolay yöntem kilitlenmeye sebep olan tüm kullanıcıları
sistemden düşürmektir. Bunu ara program kullanıyorsanız (TOAD vs.)
program arayüzündeki menülerden gerçekleştirebilirsiniz.
Daha kolay bir yöntem için sadece aşağıdaki PL-SQL sorgusunu
çalıştırmanız yeterli olacaktır


Peki bu tabloların kilidini nasıl açacaksınız?

BEGIN
FOR C IN (SELECT S.SID SID, S.SERIAL# SERIAL FROM V$LOCKED_OBJECT L, V$SESSION S WHERE L.SESSION_ID = S.SID) LOOP
EXECUTE IMMEDIATE ('ALTER SYSTEM KILL SESSION ''' || C.SID || ',' || C.SERIAL || '''');
END LOOP;
END;

*Bu Konu Hakkında Görüş, Öneri ve Düşüncelerinizi Alttaki Yorum Alanına Yazabilirsiniz*

Kaynak
Uğur KABLAN

İlgili Makaleler

Bir cevap yazın

Başa dön tuşu

Reklam Engelleyici Algılandı

Lütfen Google Reklamlarının gösterilmesi için Reklam Engelleyicinizi Kapatıp Sayfayı tekrar güncelleyiniz.