Oracle进程导致CPU 100%解决步骤(转)[@more@] 1-- 检查系统
sar -u 5 5
2-- 看谁在用CPU
topas
ps -ef |grep ora #检查第四列,C的大小(unit,100 per cpu)
3-- 检查CPU数量
/usr/sbin/bindprocessor -q
lsattr El proc0
4-- 2种可能:
1) A Background (instance) process
2) An oracle (user) process #此种可能最大。
5-- 如果是用户进程:那么高CPU的主要原因有:
Large Queries, Procedure compilation or execution, Space management and Sorting
5.1-- 查看每个Session的CPU利用情况:
select ss.sid,se.command,ss.value CPU ,se.username,se.program from v$sesstat ss, v$session se where ss.statistic# in (select statistic# from v$statname where name = 'CPU used by this session') and se.sid=ss.sid and ss.sid>6 order by ss.sid
5.2-- 比较上述Session,看那个session的CPU使用时间最多,然后查看该Session的具体情况:
select s.sid, event, wait_time, w.se