什么是STATSPACK,怎么使用?

要评估一些程序以及它们在多用户环境中的行为,我喜欢用Statspack来收集度量信息,如下:

 

1、执行一个Statspack快照来收集系统的当前状态。

2、运行程序的N个副本,每个程序向其自己的数据库表中插入(insert),以避免所有程序都试图向一个表中插入而产生的竞争。

3、在最后一个程序副本执行后,紧接着取另外一个快照。

 

那么.................................................................................................

 

什么是STATSPACK,我怎么使用它?

 

可以参考附带文档$ORACLE_HOME/rdbms/admin/spdoc.txt。

Statspack是Oracle 8i以上提供的一个非常好的性能监控与诊断工具,基本上全部包含了BSTAT/ESTAT的功能,更多的信息

 

安装Statspack:
cd $ORACLE_HOME/rdbms/admin
sqlplus "/ as sysdba" @spdrop.sql -- 卸载,第一次可以不需要
sqlplus "/ as sysdba" @spcreate.sql -- 需要根据提示输入表空间名

 

使用Statspack:
sqlplus perfstat/perfstat
exec statspack.snap; -- 进行信息收集统计,每次运行都将产生一个快照号

 

-- 获得快照号,必须要有两个以上的快照,才能生成报表
select SNAP_ID, SNAP_TIME from STATS$SNAPSHOT;
@spreport.sql -- 输入需要查看的开始快照号与结束快照号

 

其他相关脚本s:
spauto.sql - 利用dbms_job提交一个作业,自动的进行STATPACK的信息收集统计
sppurge.sql - 清除一段范围内的统计信息,需要提供开始快照与结束快照号
sptrunc.sql - 清除(truncate)所有统计信息

你可能感兴趣的:(oracle,数据库,脚本,insert,报表,作业)