天天看點

Oracle 解除鎖定程序

一、碰到的問題:

    1、修改表結構時,Oracle提示“資源正忙,要求制定NOWAIT……”——此處我修改的是字段長度,從200增加到1000.

    2、操作某張表時,出現“卡死”的情況,除Oracle外的其他應該可以正常使用。

二、造成問題的原因:

    對表進行操作後沒有送出事務,直接關閉了用戶端,導緻事務挂起,造成了後期通路該表時出現卡死的情況。

三、解決方案:

    1、得到鎖定的程序(一般是挂起的事務,在程式中表示為一個程序):

        select t1.sid, t1.serial#, t1.username, t1.logon_time from v$session t1 , v$locked_object t2 where t1.sid = t2.session_id order by t1.logon_time;

    2、根據SID和SERIAL#解除鎖定(殺死程序):

        alter system kill session 'sid,serial#';