1、 找到正在执行的 SQL,或者造成等待事件的SQL 的 sid 和 serial#,通过这两个值确定一个 session
SELECT b.username 用户名,b.sid, session_idb.serial#, 串口号spid 操作系统ID,paddr, session对应的进程地址,sql_text 正在执行的SQL,b.machine 主机名FROM v$process a, v$session b, v$sqlarea cWHERE a.addr = b.paddrAND b.sql_hash_value = c.hash_value
2、 杀死该会话
alter system kill session 'sid,SERIAL#';
–===========================================================================
oracle 等待事件 SQL 查询
select ash.USER_ID,u.username,sum(ash.WAIT_TIME) ttl_wait_time,s.SQL_TEXTfrom v$active_session_history ash, v$sqlarea s, dba_users uwhere ash.SAMPLE_TIME between sysdate - 60 / 2880 and sysdateand ash.SQL_ID = s.SQL_IDand ash.USER_ID = u.user_idgroup by ash.USER_ID, s.SQL_TEXT, u.usernameorder by ttl_wait_time desc;```