首页 > 数据库 > Oracle > 收集STATSPACK的级别
虽然AWR功能已经完全可以替代STATSPACK的功能,但是目前存在的9i的数据库还有不少,而且却是发现有不少人不了解如何更改STATSPACK的级别。
[@more@]
STATSPACK默认是LEVEL 5收集,而LEVEL 5收集的数据是不包括执行计划的,因此对于关注SQL性能的情况,至少需要调整到LEVEL 6,下面是检查和调整STATSPACK收集等级的方法,比较简单,就不多解释了:
SQL> exec statspack.snap
PL/SQL procedure successfully completed.
SQL> select snap_id, dbid, snap_level from stats$snapshot;
SNAP_ID DBID SNAP_LEVEL
---------- ---------- ----------
1 1258229964 5
1 row selected.
SQL> exec statspack.snap(i_snap_level => 6)
PL/SQL procedure successfully completed.
SQL> select snap_id, dbid, snap_level from stats$snapshot;
SNAP_ID DBID SNAP_LEVEL
---------- ---------- ----------
1 1258229964 5
2 1258229964 6
2 rows selected.
SQL> exec statspack.snap
PL/SQL procedure successfully completed.
SQL> select snap_id, dbid, snap_level from stats$snapshot;
SNAP_ID DBID SNAP_LEVEL
---------- ---------- ----------
1 1258229964 5
2 1258229964 6
3 1258229964 5
3 rows selected.
SQL> exec statspack.snap(i_snap_level => 6, i_modify_parameter => 'true')
PL/SQL procedure successfully completed.
SQL> select snap_id, dbid, snap_level from stats$snapshot;
SNAP_ID DBID SNAP_LEVEL
---------- ---------- ----------
1 1258229964 5
2 1258229964 6
3 1258229964 5
4 1258229964 6
4 rows selected.
SQL> exec statspack.snap
PL/SQL procedure successfully completed.
SQL> select snap_id, dbid, snap_level from stats$snapshot;
SNAP_ID DBID SNAP_LEVEL
---------- ---------- ----------
1 1258229964 5
2 1258229964 6
3 1258229964 5
4 1258229964 6
5 1258229964 6
5 rows selected.
SQL> exec statspack.modify_statspack_parameter(i_snap_level => 10)
PL/SQL procedure successfully completed.
SQL> exec statspack.snap
PL/SQL procedure successfully completed.
SQL> select snap_id, dbid, snap_level from stats$snapshot;
SNAP_ID DBID SNAP_LEVEL
---------- ---------- ----------
1 1258229964 5
2 1258229964 6
3 1258229964 5
4 1258229964 6
5 1258229964 6
6 1258229964 10
6 rows selected.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8494287/viewspace-1402965/ ,如需转载,请注明出处,否则将追究法律责任。