AIX下 Oracle10G 耗cpu处理

问题现像:oracle主机cpu过高,95%, 导至加接掉线或无法连接,时通时断。
快速处理就是重启数据库,然后通过ash 和awr查找问题:

ASH查询
SQL> @?/rdbms/admin/ashrpt.sql

AWR查询:
SQL> @?/rdbms/admin/awrrpt.sql

ADD报告
SQL> @?/rdbms/admin/addmrpt.sql

 

 

实时查看:

1.先topas再c,查看哪些进程耗cpu,找出pid
如查到 10879036 这个pid耗cpu
2.通过下面方法查,系统的pid在oracle里叫spid

--查v$process,查看addr 和消耗的pga
select SPID,pid,addr,PGA_USED_MEM,PGA_ALLOC_MEM,PGA_FREEABLE_MEM,PGA_MAX_MEM from gv$process where spid in (10879036);

--通过spid查sid
select s.sid,p.spid from v$session s,v$process p where s.paddr=p.addr and p.spid=11534438;

--通过sid查询sql_text
select sql_text from v$session s,v$sqltext q where s.sql_hash_value =q.hash_value and s.sql_address=q.address and s.sid=1584;

看看哪些语句耗cpu

AIX下 Oracle10G 耗cpu处理

上一篇:数据库,缓存数据一致性常用解决方案总结


下一篇:Oracle 有的表查不到归属表空间