查询oracle正在运行的sql查询语句
引自:http://space.itpub.net/17253074/viewspace-592092
查询正在后台进行的SQL查询:
1、select sid,username,last_call_et,status
from v$session
where status='ACTIVE' and username is not null
order by last_call_et;
或者:
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=hash_value
and status='ACTIVE' and v$session.username is not null
order by last_call_et desc;
2、
select sql_text
from v$session a,v$sqltext_with_newlines b
where DECODE(a.sql_hash_value,0,prev_hash_value,sql_hash_value)=b.hash_value and a.sid=&1 order by piece;
还有一种方法:
select a.username, a.sid, b.sql_text
from v$session a, v$sqlarea b
where a.sql_address = b.address
另外,查询长时间IDLE的连接:
select sid,serial#,username,machine,last_call_et,status
from v$session
where status='INACTIVE' and username is not null
order by last_call_et;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/276487/viewspace-670700/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/276487/viewspace-670700/