系统很慢,除了查看AWR、ADDM、ASH外,还可以通过相关视图查看等待事件,看看是那些等待事件引起的。
可以通过视图v$session_wait查看都有那些等待,然后再根据sid查询对应的sql,然后再分析sql的执行计划等等
大概思路就是这样。
-- 查看等待事件
select sid,event,p1,p1text from v$session_wait;
-- 根据sid查看对应的sql
select sql_text from v$sqltext a
where a.hash_value=(select sql_hash_value from v$session b where b.sid='&sid')
-- 再根据查询到的sql语句,分析执行计划(略)
-- 几个视图
V$SESSION_WAIT displays the current or last wait for each session.
V$SESSION_WAIT_HISTORY displays the last 10 wait events for each active session.
V$SQLTEXT displays the text of SQL statements belonging to shared SQL cursors in the SGA.
End