查询数据库中正在执行的sql;
select c.sPID,
a.inst_id, /*a.saddr,*/
a.sid,
a.serial#, /*a.username,*/
a.last_call_et elapse_time_s,
b.sql_text,
b.sql_fulltext
from gv$session a, v$sqlarea b, v$process c
where a.sql_id = b.sql_id
and a.paddr = c.addr
AND a.PROGRAM = 'JDBC Thin Client';
批量查询kill正在执行的sql:
select 'alter system kill session ''' || a.sid || ',' || a.serial# || ''';'
from gv$session a, v$sqlarea b, v$process c
where a.sql_id = b.sql_id
and a.paddr = c.addr
AND a.PROGRAM = 'JDBC Thin Client';
kill单个sql的sql:
alter system kill session 'sid,serial#'
查询数据库中的锁:
SELECT l.session_id sid,
s.serial#,
l.locked_mode,
l.oracle_username,
s.user#,
l.os_user_name,
s.machine,
s.terminal,
a.sql_text,
a.action
FROM v$sqlarea a, v$session s, v$locked_object l
WHERE l.session_id = s.sid
AND s.prev_sql_addr = a.address
ORDER BY sid, s.serial#;
批量查询kill全部锁的sql:
select 'alter system kill session ''' || s.sid || ',' || s.serial# || ''';'
from v$locked_object l, dba_objects o, v$session s
where l.object_id = o.object_id
and l.session_id = s.sid;