oracl 鎖表 解鎖 殺死程序

2021-08-27 08:19:09 字數 1023 閱讀 9282

1  查詢資料庫被鎖的表:

select l.session_id sid,  

s.serial#,  

l.locked_mode 鎖模式,  

l.oracle_username 登入使用者,  

l.os_user_name 登入機器使用者名稱,  

s.machine 機器名,  

s.program 終端名,

s.terminal 終端使用者名稱,  

o.object_name 被鎖物件名,  

s.logon_time 登入資料庫時間  

from v$locked_object l, all_objects o, v$session s  

where l.object_id = o.object_id  

and l.session_id = s.sid  

order by sid, s.serial#;  

2  刪除被鎖的表的session

alter system kill session '~sid~,~serial#~';

例:alter system kill session '1998,2815';

3  如果用alter system kill session殺不掉對應的程序的話,找出這個程序的spid,在命令視窗,執行 orakill命令,orakill是oracle提供的乙個可執行命令,格式為:orakill sid spid

(錯誤報告 -sql 錯誤: ora-00031: 標記要終止的會話)

(1)找出鎖表sid對應的spid

select spid, osuser, s.program from v$session s,v$process p where s.paddr=p.addr and s.sid=1998

(2)登陸資料庫伺服器, 在命令視窗,執行 orakill orcl 2160 (2160是spid)

Oracle 鎖表 解鎖

select l.session id sid,s.serial l.locked mode,l.oracle username,l.os user name,s.machine,s.terminal,o.object name,s.logon time from v locked object l...

鎖表解鎖語句

select alter system kill session lo.session id vss.serial killed dob.object name table name lo.session id vss.serial 刪除號 lo.locked mode lo.session id ...

Oracle 鎖表 解鎖

以下幾個為相關表 select from v lock select from v sqlarea select from v session select from v process select from v locked object select from all objects sele...