问题
在 sqlplus 中运行了一条非常耗资源的语句,CPU 占用率高,语句迟迟不输出结果。这个时候关掉 sqlplus 是没用的,语句还会在 session 里跑。
解决方案
- 找到运行这条语句的 session。
select x.sid
,x.serial#
,x.username
,x.sql_id
,x.sql_child_number
,optimizer_mode
,hash_value
,address
,sql_text
from v$sqlarea sqlarea
,v$session x
where x.sql_hash_value = sqlarea.hash_value
and x.sql_address = sqlarea.address
and x.username is not null;
- kill 掉这个 session。
alter system kill session 'sid,serial#';