Decode360's Blog

业精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

  BlogJava :: 首页 :: 新随笔 :: 联系 ::  :: 管理 ::
  397 随笔 :: 33 文章 :: 29 评论 :: 0 Trackbacks
Statspack学习(一).安装配置
 
    Statspack是Oracle提供的一个非常强大的工具,用于检测Oracle系统在某段时间内的执行性能,是用来判断、排查Oracle故障和系统瓶颈的最主要和最常用的手段。从今天开始就来学习一下这个工具的使用方法。
 
一、参数设置
 
    安装和运行Statspack需要配置以下参数
 
    1、job_queue_processes
 
    为了可以建立自动任务,执行数据手机,该参数需要大于0(默认是10)
 
    2、timed_statistics
 
    收集操作系统的计时信息,用以先是时间等统计信息,优化数据库和SQL语句。在使用statspack收集统计信息时建议将该值设置为TRUE,否则收集的统计信息大概只能起到10%的作用。timed_statistics设置为true会引起系统的开销,但是其带来的影响与好处相比是微不足道的
 
    注:该参数收集的时间信息存储在v$sysstat和v$sesstat等动态视图中。
 
 
二、安装Statspack
 
    以SYSDBA身份登陆,执行安装脚本
 
    1、查看基础信息
 
    SQL> select instance_name,host_name,version,startup_time from v$instance;
 
    INSTANCE_NAME    HOST_NAME  VERSION           STARTUP_TIME
    ---------------- ---------- ----------------- ------------
    dodo             WXQ-0099   10.2.0.1.0        2009-2-21
 
    2、查看现有数据文件位置
 
    SQL> select file_name from dba_data_files;
 
    FILE_NAME
    ---------------------------------------------------------
    E:\ORACLE\PRODUCT\10.2.0\ORADATA\DODO\USERS01.DBF
    E:\ORACLE\PRODUCT\10.2.0\ORADATA\DODO\SYSAUX01.DBF
    E:\ORACLE\PRODUCT\10.2.0\ORADATA\DODO\UNDOTBS01.DBF
    E:\ORACLE\PRODUCT\10.2.0\ORADATA\DODO\SYSTEM01.DBF
   
    3、创建表空间,用于存放统计信息
 
    注:如果采样间隔短、周期长则使用大一点的表空间。例如每半小时采样一次,持续一周,则数据量比较大,需要500M左右空间。
    注:表空间不能太小,否则创建对象会失败,至少需要100M空间
 
    SQL> create tablespace perfstat
      2  datafile 'E:\ORACLE\PRODUCT\10.2.0\ORADATA\DODO\PERFSTAT.DBF'
      3  size 500M
      4  extent management local;
 
    Tablespace created
 
    4、执行spcreate脚本创建Statspack
 
    SQL> @E:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\spcreate.sql
 
    开始创建之后需要输入以下几个值:
    Enter value for perfstat_password:perfstat
    Enter value for defaulttablespace:perfstat
    Entwe value for temporary_tablespace:temp
 
    最后如果安装成功会出现以下信息:
 
    Started spooling to D:\Program Files\PLSQL Developer\spcpkg.lis
    Creating Package STATSPACK...
    Package created
    No errors for PACKAGE PERFSTAT.STATSPACK

    Creating Package Body STATSPACK...
    Package body created
    No errors for PACKAGE BODY PERFSTAT.STATSPACK
 
    NOTE:
    SPCPKG complete. Please check spcpkg.lis for any errors.

    Stopped spooling to D:\Program Files\PLSQL Developer\spcpkg.lis
 
    如果安装出现问题或者想要删除statspack,执行spdrop.sql脚本删除创建的所有对象。
 
    注:不要用PLSQL DEV进行执行脚本,因为有些指令无法编译通过。
 
 
三、测试Statspack
 
    首先模拟执行n次的statspack.snap
 
    SQL> execute statspack.snap;
    PL/SQL procedure successfully completed
 
    SQL> execute statspack.snap;
    PL/SQL procedure successfully completed
 
    SQL> execute statspack.snap;
    PL/SQL procedure successfully completed
 
    然后执行spreport.sql脚本
 
    SQL> @E:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\spreport.sql;
 
    Enter value for begin_snap:1
    Enter value for end_snap:3
    Enter value for report_name:test
 
    注1:snap代码会在脚本执行的过程中展示出来
    注2:会在当前目录下生成一个名为test.lst的文件保存信息
 
   
 
posted on 2009-01-17 20:47 decode360 阅读(130) 评论(0)  编辑  收藏 所属分类: 10.DB_Tools

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问