select count(*) count
,a.user_name username
, b.sql_text sql_text
from v$open_cursor a
, v$sqlarea b
where a.address = b.address
group by a.user_name
, b.sql_text
having count(*) > 1 order by count(*) desc;
select status
, machine
, osuser
, username
, a.sql_text
from v$session s
, v$open_cursor o
, v$sqlarea a
where s.saddr=o.saddr
and s.sid=o.sid
and o.address=a.address
and o.hash_value=a.hash_value
and user_name = 'USERNAME';
Длительные запросы, выполняемые в данный момент в определённой сессии. Нижеприведённый код выводит информацию о действии, выполненном объёме, общем объёме, проценте выполнения, единицах, времени, прошедшем с момента старта, и об оставшемся времени выполнения.
SELECT decode(
target_desc
,NULL
,decode(target,NULL,opname, concat(opname, concat (' - ',target)))
,decode(target,NULL,concat(opname, concat (' : ',target_desc))
,concat(opname, concat (' : ',concat(target_desc,concat (' - ',target)))))) action
,sofar
,totalwork
,round(sofar*100/totalwork,2) percent
,units
,TO_CHAR (TRUNC (SYSDATE) + NUMTODSINTERVAL (elapsed_seconds, 'second'),'hh24:mi:ss') elapsed_time
,TO_CHAR (TRUNC (SYSDATE) + NUMTODSINTERVAL (time_remaining, 'second'),'hh24:mi:ss') time_remaining
FROM v$session_longops
WHERE sid = 492 AND serial# = 2611;
то же, но для активных сессий:
SELECT decode(
target_desc
,NULL
,decode(target,NULL,opname, concat(opname, concat (' - ',target)))
,decode(target,NULL,concat(opname, concat (' : ',target_desc))
,concat(opname, concat (' : ',concat(target_desc,concat (' - ',target)))))) action
,sofar
,totalwork
,round(sofar*100/totalwork,2) percent
,units
,TO_CHAR (TRUNC (SYSDATE) + NUMTODSINTERVAL (elapsed_seconds, 'second'),'hh24:mi:ss') elapsed_time
,TO_CHAR (TRUNC (SYSDATE) + NUMTODSINTERVAL (time_remaining, 'second'),'hh24:mi:ss') time_remaining
FROM v$session_longops
WHERE (sid,serial#) in (select sid,serial# from v$session where status='ACTIVE');
SELECT s.sid, s.serial#, s.username, t.used_urec, t.used_ublk FROM v$session s, v$transaction t WHERE s.saddr = t.ses_addr ORDER BY t.used_ublk DESC;