查看是否鎖表

--查看鎖表語句數據庫

select sess.sid,     sess.serial#,     lo.oracle_username,     lo.os_user_name,     ao.object_name,     lo.locked_mode     from v$locked_object lo,     dba_objects ao,     v$session sess where ao.object_id = lo.object_id and lo.session_id = sess.sid;session

--查看被鎖sessionoracle

select * from v$session t1, v$locked_object t2 where t1.sid = t2.SESSION_ID;spa

 

辦法一:開發

--若有記錄則表示有lock,記錄下SID和serial# ,將記錄的ID替換下面的738,1429,便可解除LOCKit

alter system kill session '4457,38428';io

辦法二:class

oracle_11g才適用的方法object

alter session set ddl_lock_timeout = 600;  select

or

alter system set ddl_lock_timeout = 600;  

這種方法是設置系統或會話的鎖定時間。這個辦法實際上也不是治本的方法,可是能夠減小人工操做罷了,要想治本仍是要求咱們的開發人員和數據庫使用人員在操做數據庫的時候記得要commit。

相關文章
相關標籤/搜索