AWR、ASH和Statspack的生成语句

AWR、ASH和Statspack的生成语句
2010-08-24 14:03

---Statspack初始化方法(必须拥有DBA权限)
@$ORACLE_HOME/rdbms/admin/spcreate.sql

---Statspack删除方法
@$ORACLE_HOME/rdbms/admin/spdrop.sql

---Statspack清除方法
@$ORACLE_HOME/rdbms/admin/sptrunc.sql

---Statspack创建快照方法
sqlplus perfstat/perfstat
exec statspack.snap
select snap_id,snap_time from stats$snapshot;

--生成Statspack报告方法
@$ORACLE_HOME/rdbms/admin/spreport.sql--根据上面查询出来的快照号码来生成报告


ASHAWR都是oracle自动创建的,不用手动创建
AWR快照也是一个小时一个自动创建的
ASH是看最近的性能的,也不用手动创建


--生成AWR报告
@$ORACLE_HOME/rdbms/admin/awrrpt.sql
--本机生成
@C:oracleproduct10.2.0db_3RDBMSADMINawrrpt.sql


--生成ASH报告
@$ORACLE_HOME/rdbms/admin/ashrpt.sql
--本机生成
@C:oracleproduct10.2.0db_3RDBMSADMINashrpt.sql

-----查看系统中两个Statspack之间,读写的情况。可以加一个时间的限制条件(但是如果statspack号码不是连续的会出错)
select snap_id,round(sum(read/1024)) "write(kb)",round(sum(write/1024)) "read(kb)" from
(select sn.snap_id snap_id ,(newr.value-oldr.value) read,
(neww.value-oldw.value) write
from stats$sysstat newr,
stats$sysstat oldr,
stats$sysstat neww,
stats$sysstat oldw,
stats$sysstat sn
where sn.snap_id=newr.snap_id
and sn.snap_id=neww.snap_id
and sn.snap_id-1=oldr.snap_id
and sn.snap_id-1=oldw.snap_id
and newr.name='physical reads'
and oldr.name='physical reads'
and neww.name='physical writes'
and oldw.name='physical writes'
) v
group by snap_id

----对上个语句的支持,增加一个view就可以使statspack号码连续了
create or replace view v_stats$snapshot as
select row_num() over (order by snap_id) id, t.*
from stats$snapshot t


你可能感兴趣的:(oracle,c,2010)