Oracle 9.2版本的Statspack提供了新的快照采样级别Level 7,这个级别增加了段级统计信息(Segment level Statistics)。
这里我们给出使用Statspack生成Level 7级别带注释的快照。
1.手工生成带注释信息的level 7的快照方法
方法很简单,仅需使用statspack包的snap过程的i_snap_level和I_UCOMMENT参数便可完成。方法如下。
SQL> execute statspack.snap(i_snap_level=>7, I_UCOMMENT=>'Comments by Secooler');
2.检查快照生成效果
SQL> @?/rdbms/admin/spreport.sql
…… 省略无关输出 ……
Listing all Completed Snapshots
Snap
Instance DB Name Snap Id Snap Started Level Comment
------------ ------------ --------- ----------------- ----- --------------------
ora10g ORA10G 1 10 Aug 2011 21:04 7
11 10 Aug 2011 21:04 7
12 10 Aug 2011 21:07 7 Comments by Secooler
13 10 Aug 2011 21:07 7 Comments by Secooler
…… 省略无关输出 ……
以上是两次手工生成快照后的效果。最后一列“Comment”清楚的记录了我们的注释内容。
3.有关生成注释的参考信息
主要用到的就是i_ucomment参数实现注释功能,spdoc.txt帮助文档中有关于该参数的描述,引述如下。
Parameter Name Valid Values Value Meaning
------------------ ------------ ------- -----------------------------------
…… 省略其他输出 ……
i_ucomment Text
…… 省略其他输出 ……
从statspack包的定义中也可以找到I_UCOMMENT参数的身影。
sys@ora10g> desc statspack
…… 省略其他输出 ……
PROCEDURE SNAP
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
I_SNAP_LEVEL NUMBER IN DEFAULT
I_SESSION_ID NUMBER IN DEFAULT
I_UCOMMENT VARCHAR2 IN DEFAULT
I_NUM_SQL NUMBER IN DEFAULT
I_EXECUTIONS_TH NUMBER IN DEFAULT
I_PARSE_CALLS_TH NUMBER IN DEFAULT
I_DISK_READS_TH NUMBER IN DEFAULT
I_BUFFER_GETS_TH NUMBER IN DEFAULT
I_SHARABLE_MEM_TH NUMBER IN DEFAULT
I_VERSION_COUNT_TH NUMBER IN DEFAULT
I_SEG_PHY_READS_TH NUMBER IN DEFAULT
I_SEG_LOG_READS_TH NUMBER IN DEFAULT
I_SEG_BUFF_BUSY_TH NUMBER IN DEFAULT
I_SEG_ROWLOCK_W_TH NUMBER IN DEFAULT
I_SEG_ITL_WAITS_TH NUMBER IN DEFAULT
I_SEG_CR_BKS_RC_TH NUMBER IN DEFAULT
I_SEG_CU_BKS_RC_TH NUMBER IN DEFAULT
I_ALL_INIT VARCHAR2 IN DEFAULT
I_OLD_SQL_CAPTURE_MTH VARCHAR2 IN DEFAULT
I_PIN_STATSPACK VARCHAR2 IN DEFAULT
I_MODIFY_PARAMETER VARCHAR2 IN DEFAULT
…… 省略其他输出 ……
4.小结
本文给出的仅仅是Statspack生成快照过程中的一个小功能——手工生成带注释信息的Level 7级别快照。
随着Oracle推出自带的AWR工具之后,Statspack工具渐渐从DBA面前消失,不过Statspack的一些细节仍然值得我们去探索。
Good luck.
secooler
11.08.10
-- The End --