statspack的实战学习
说明:statspack的学习可参照 %oracle_home%\rdbms\admin下的spdoc.txt文档。
http://bbs.chinaunix.net/viewthread.php?tid=915444
1、statspack的安装和卸载
cd %oracle_home%\rdbms\admin
sqlplus "/ as sysdba" @spcreate.sql -- 安装statspack
这里是以OS身份认证登录的,如非本机,则需明确指定sys账户登录,如:sqlplus "sys/sys@localtns as sysdba" @spcreate.sql
sqlplus "/ as sysdba" @spdrop.sql -- 卸载statspack,第一次则不需要,因为默认不启用statspack
注:可通过select user from dual 来查询当前登录账户。
2、statspack的安装执行过程
- 进行程序包、包主体、视图、同义词的创建,并进行相应授权
- 创建perfstat用户,手工指定密码后并自动进行授权
- 手动选择当前一tablespace和临时tablespace
- 创建statspack启动时数据收集的表和同义词
- 整个过程可参考安装执行过程中生成的日志,就在当前目录下*.lis文件(spcpkg.lis、spctab.lis、spcusr.lis)
3、statspack的手动执行和报表获取
exec statspack.snap
@spreport.sql -- 输入开始和截止的 snap_id值 即可
默认会在当前目录下生成报表:sp_{0}_{1}.lst文件,{0} &{1}分别表示snap_id的开始和截止值
4、其他相关脚本
@spauto.sql - 利用dbms_job提交一个作业,自动的进行STATPACK的信息收集统计,收集频率:1小时一次
@sppurge.sql - 清除一段范围内的统计信息,需要提供开始快照与结束快照号
@sptrunc.sql - 清除(truncate)所有统计信息
参考文档:http://blog.csdn.net/niuyang1314/archive/2009/03/01/3948036.aspx