首先应该知道,statspack工具的作用,它是Oracle 8.1.6开始被引入的用来辅助工作人员诊断数据库性能的工具,同过它收集的数据生成分析报告,也可以使远程技术支持人员迅速了解数据库的运行状况,它可以通过手工方式来执行,也可以用过定时任务来进行定期采样。
接下来展示使用过程:
一:为了能够顺利的安装和使用statspack,可能需要设置一下两个系统参数,
1,job_queue_processes
为了能够建立自动任务,执行数据收集,该参数需要大于0,
SYS@ENMOEDU> alter system set job_queue_processes = 8 scope=both; #both 是指在当前和重启后都有效,
System altered.
2. timed_statistic 这个参数设置为true时,Oracle 将实时收集操作系统的计时信息,这些信息可被用来显示时间等统计信息,优化数据库和SQL语句。
System altered.
2. timed_statistic 这个参数设置为true时,Oracle 将实时收集操作系统的计时信息,这些信息可被用来显示时间等统计信息,优化数据库和SQL语句。
二:安装statspack
1.首先登录到数据库,最好切换到$ORACLE_HOME/rdbms/admin 目录 以便执行脚本,
[
oracle@ENMOEDU admin]$ pwd
/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/admin
[ oracle@ENMOEDU admin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Mon Aug 18 21:44:36 2014
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@ENMOEDU>
/u01/app/oracle/product/11.2.0/dbhome_1/rdbms/admin
[ oracle@ENMOEDU admin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Mon Aug 18 21:44:36 2014
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SYS@ENMOEDU>
2.由于statspack需要一定的存储空间,最好建立独立的的表空间,如果采样间隔短,周期较长,打算长期使用,那么就可能需要一个大一点的表空间。(不要太小,至少要建立100M)
SYS@ENMOEDU> create tablespace dbpower datafile '/u01/app/oracle/oradata/ENMOEDU/dbpower.dbf' size 500m autoextend on ;
Tablespace created.
Tablespace created.
3.接下来 就开始安装了,这期间会提示输入缺省表空间和临时表空间的名字,
SYS@ENMOEDU>@spcreate #直接跑脚本就可以了 显示以下信息 证明你已经成功安装了
Creating Package STATSPACK...
Package created.
No errors.
Creating Package Body STATSPACK...
Package body created.
No errors.
NOTE:
SPCPKG complete. Please check spcpkg.lis for any errors.
三:运行statspack.snap 就可以产生系统快照,运行两次,然后执行spreport.sql 就会生成一个基于两个时间点的报告。如果一切正常,说明安装成功。生成的报表的名称可以自定义,也可以缺省,默认在当前目录下生成一个报告,
Listing all Completed Snapshots
Snap
Instance DB Name Snap Id Snap Started Level Comment
------------ ------------ --------- ----------------- ----- --------------------
ENMOEDU ENMOEDU 1 18 Aug 2014 22:02 5
2 18 Aug 2014 22:02 5
Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 1
Begin Snapshot Id specified: 1
Enter value for end_snap: 10
End Snapshot Id specified: 10
注意:一个statspack的报告不能跨越一次停机,但是之前或之后的连续区间,收集的信息依然有效,可以选择之前或之后的采样生成report
四:移除定时任务
先通过下面的语句查出job 号
SYS@ENMOEDU> select JOB,LOG_USER,PRIV_USER,LAST_DATE,NEXT_DATE,INTERVAL from user_jobs;
然后
SYS@ENMOEDU> execute dbms_job.remove('查出来的job号')
五:删除历史数据
删除stats$snapshot 数据表的数据,其他表的数据也会级联的删除掉
六;可以通过运行脚本 spdrop.sql来删除由脚本spcreate产生的对象;
总结:statspack工具产生的报告不含系统信息,不能对系统资源进行评估,这是他的一个欠缺之处,但是后来的AWR报告中有了这些内容,弥补了它的不足。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29654823/viewspace-1253481/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29654823/viewspace-1253481/