1. 当前运行的sql语句
select sid, v$session.username 用户名,
last_call_et 持续时间,
status 状态,
LOCKWAIT 等待锁,
machine 用户电脑名,
logon_time 开始登入时间,
sql_text
from v$session, v$process, v$sqlarea
where paddr = addr
and sql_hash_value = http://blog.soso.com/qz.q/hash_value
and status = 'ACTIVE'
and v$session.username is not null
order by last_call_et desc;
2.根据sid查询已经执行过的sql
select sql_text from v$sqlarea a,v$session b where a.SQL_ID=b.PREV_SQL_ID and b.SID=&sid;
3.根据sid查询当前执行的sql
select sql_text from v$sqlarea where (hash_value,address)=(select sql_hash_value,sql_address from v$session where sid=&sid);
4.查询oracle 锁表情况
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
5.杀掉锁表的语句
如有记录则表示有lock,记录下SID和serial# ,将记录的ID替换下面的738,1429,即可解除LOCK
alter system kill session '1793,25320';
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25540809/viewspace-758054/ ,如需转载,请注明出处,否则将追究法律责任。