全部博文(147)
分类: Oracle
2008-12-16 17:00:44
维护要点:
增加定时任务:
修改 spauto.sql 中DBMS.JOB.SUBMIT内的内容:
1/24 HH 每小时一次
1/48 MI 每半小时一次
1/144 MI 每十分钟一次
1/288 MI 每五分钟一次
修改spauto.sql 来更改执行间隔,如:
dbms_job.submit(:jobno, 'statspack.snap;',
trunc(sysdate+1/48,'MI'), 'trunc(SYSDATE+1/48,''MI'')', TRUE, :instno);
然后执行:SQL>spauto.sql;
手工收集快照:
1\ 先修改快照收集级别---10
SQL>execute statspack.snap(i_snap_level=>10,i_modify_parameter=>’true’); --修改收集级别为10
注意:
Statspack 有两种类型的收集选项:
级别(level):控制收集数据的类型
门限(threshold):设置收集的数据的阈值。
1.级别(level)
Statspack 共有三种快照级别,默认值是5
a.level 0: 一般性能统计。包括等待事件、系统事件、系统统计、回滚段统计、行缓存、SGA、会话、
锁、缓冲池统计等等。
b.level 5: 增加SQL 语句。除了包括level0 的所有内容,还包括SQL 语句的收集,收集结果记录在
stats$sql_summary 中。
c.level 10: 增加子锁存统计。包括level5 的所有内容。并且还会将附加的子锁存存入
stats$lathc_children 中。在使用这个级别时需要慎重,建议在Oracle support 的指导下进行。
可以通过statspack 包修改缺省的级别设置
SQL>execute statspack.snap(i_snap_level=>10,i_modify_parameter=>’true’);
通过这样的设置,以后的收集级别都将是0 级。
如果你只是想本次改变收集级别,可以忽略i_modify_parameter 参数。
SQL>execute statspack.snap(i_snap_level=>10);
2\ 手工生成快照;
SQL>execute statspack.snap ---快照1
PL/SQL procedure successfully completed.
SQL>execute statspack.snap ---快照2 与1间隔一段时间
PL/SQL procedure successfully completed.
SQL>@spreport.sql ---生成指定快照间的报告
查看定时任务,
SQL> select job,log_user,priv_user,last_date,next_date,interval from user_jobs;
删除定时任务:
SQL> execute dbms_job.remove('xxx') 注:xxx为查询任务出来的结果
查看快照历史:
SQL> select max(snap_id) from stats$snapshot;
删除历史快照:
SQL> delete from stats$snapshot where snap_id < = xxx; 注:xxx为查询任务出来的结果
生成快照可读结果:
SQL> spreport.sql;
----生成在/oracle/product/10.2.0/rdbms/admin 目录下,文件名自定义