ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 简易操作statspack

简易操作statspack

原创 Linux操作系统 作者:tolywang 时间:2007-10-26 00:00:00 0 删除 编辑

1. 修改参数:

alter system set job_queue_processes = 6 scope=both; (job运行需要这个参数非0)

alter system set timed_statistics = true; ( 如果担心影响性能,收集完之后关闭 )

2. 建立statspack专用空间.

SQL> create tablespace perfstat datafile '/data/dell/perfstat.dbf' size 500M extent management local;


3. $cd $ORACLE_HOME/rdbms/admin/

SQL>@spcreate

default_tablespace : perfstat

Using perfstat for the default tablespace

Specify PERFSTAT user's temporary tablespace

temporary_tablespace : temp

4. 所有运行完成后查看 spcpkg.lis,如果发现错误, 可以运行spdrop.sql来删除这些对象. 然后重新执行.

5. sysdba权限的用户登入后执行 statspack.snap , SQL>@spreport.sql 得出两次执行的时间的报告 .

SQL>execute statspack.snap

PL/SQL procedure successfully completed.

.....

SQL>execute statspack.snap

PL/SQL procedure successfully completed.

SQL>@spreport.sql (收集上面两个时间点的信息)

6. 如果需要长期收集定期数据,可以使用job定时执行.

$ORACLE_HOME/rdbms/admin/ spatuo.sql .

内容:

dbms_job.submit(:jobno, 'statspack.snap;',

trunc(sysdate+1/24,'HH'), 'trunc(SYSDATE+1/24,''HH'')', TRUE, :instno);

可以修改运行时间, 然后 SQL>@spauto.sql .

7. SQL>@spreport.sql 执行可以得出任何收集时间之内的报告. (可能要输入两个间隔job id)

8. 完成采样,要及时清理掉Job ,不然会生成很多数据, 比较危险.

SQL> select job,log_user,priv_user,last_date,next_date,interval from user_jobs;

JOB LOG_USERLAST_DATENEXT_DATEINTERVAL

---------- ----------------------------------- ------------------------------ -----------

22 PERFSTAT 2002-12-5:14:33:26 2002-12-5 14:43:00 trunc(SYSDATE+1/144,'MI')

执行 SQL> execute dbms_job.remove('22') ; 删除job .

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-84972/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle , MySQL, SAP IQ, SAP HANA, PostgreSQL, Tableau 技术讨论,希望在这里一起分享知识,讨论技术,畅谈人生 。

注册时间:2007-12-10

  • 博文量
    5595
  • 访问量
    13133429