Statpack 的基本使用方法

来源:互联网 发布:河南省数据统计门户 编辑:程序博客网 时间:2024/06/04 19:52

                       Statpack 的基本使用方法

1 安装 

1)表空间准备  

首先以SYS身份建一个单独的表空间,要求比较大,最好1,2G

create tablespace statpack;

datafile 'D:/oracle/oradata/zero_plus/db01/statpack.dbf' size 2000m autoextend on next 10M

extent management local uniform size 128k segment space management auto;

注意system表空间不能被用于perfstat用户的默认表空间。

drop tablespace statpacktemp;

create temporary tablespace statpacktemp 

tempfile 'D:/oracle/oradata/zero_plus/db01/statpacktemp.dbf' size 200m reuse autoextend on next 10M extent management local uniform size 128k segment space management manual;

 

2)运行脚本(运行脚本最好在sqlplus下,不要用像pl/sql的工具)

  接着运行oracle_home dbms/admin目录下的spcreate.sql

验证安装为:

execute statspack.snap

 

2 基本使用

    1)获取快照:execute statspack.snap

2)获取报告:

一定要用perfstatperfstat登陆,然后

 执行@spreport.sql

定义好报告文件(在最后一步),就可以查看生成的报表了.

如果是有多个实例的话,要执行sprepins.sql去生成报告.

3)自动获取快照

     执行脚本D:/oracle/product/10.2.0/db_1/RDBMS/ADMIN/spauto.sql

   注意因为有采样时间,所以可以在spauto.sql中去改的,找到:    dbms_job.submit(:job,'statspack.snap;',trunc(sysdate+1/24,'hh24'),'trunc(sysdate+1/24,''hh24'')'); 去修改.

查看snapshot列表

   select snap_id,snap_time,startup_time from stats$snapshot;

4)查看某个SQL语句执行计划

首先要用spreport找出这些SQL语句,记下其hash

                                                       CPU      Elapsd     Old

  Buffer Gets    Executions  Gets per Exec  %Total Time (s)  Time (s) Hash Value

--------------- ------------ -------------- ------ -------- --------- ----------

        250,175          259          965.9   63.5    36.93    386.17 2689373535

 

然后执行@sprepsql.sql,输入那个hash值即可看到相关的执行计划

 

 

原创粉丝点击