当前位置:  数据库>oracle

Oracle 9i配置Statspack工具

    来源: 互联网  发布时间:2017-06-04

    本文导语: Oracle自诊断工具对日常性能诊断作用很大。从Oracle 8开始,Oracle就在不断地推进综合性的自诊断工具包发展。从最早的Statspack到现在的AWR、ADDM,Oracle正向着自诊断、智能化的方向发展。 Statspack作为Oracle早期推出的工具包,最早...

Oracle自诊断工具对日常性能诊断作用很大。从Oracle 8开始,Oracle就在不断地推进综合性的自诊断工具包发展。从最早的Statspack到现在的AWR、ADDM,Oracle正向着自诊断、智能化的方向发展。
 
Statspack作为Oracle早期推出的工具包,最早出现在Oracle 8,在9i版本中获得广泛的应用。从发展历程上,Statspack奠定了现有AWR的基本工作原理和指标方式。AWR是在Statspack的基础上进行的完善发展。
 
在一些老系统中,9i依然是数据库主要环境系统,Statspack的诊断功能是需要的。本篇介绍9i环境下Statspack工具安装使用,以及执行计划抽取等常用方法。
 
--------------------------------------分割线 --------------------------------------

相关阅读:

细化解析Oracle 10g Statspack的新功能

Oracle中暗藏的珍宝:Statspack

使用Statspack进行Oracle性能分析

Oracle Statspack安装使用攻略

Statspack 安装和使用

--------------------------------------分割线 --------------------------------------

1、Statspack安装卸载

默认情况下,Statspack是不会作为默认选项安装的。由于10g版本下AWR的存在,一般情况下我们也不需要额外安装过时的Statspack包。我们着重介绍一下如何实现9i环境的安装。
 
SQL> select * from v$version;

BANNER

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

Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

PL/SQL Release 9.2.0.1.0 - Production

CORE 9.2.0.1.0 Production

TNS for 32-bit Windows: Version 9.2.0.1.0 - Production

NLSRTL Version 9.2.0.1.0 – Production

简单的说,statspack工具包就是PL/SQL存储过程包和一系列Snapshot基础信息表构成的小程序。保留的Snapshot运行数据需要额外的存储空间进行保存,所以建议创建额外的表空间存储进行数据保留。
 
SQL> create tablespace stptbl datafile 'C:ORACLEORADATAORA9ISTPTBL01.dbf' size 500m autoextend on
 
  2  extent management local uniform size 1m

  3  segment space management auto;

Tablespace created

注意:同AWR自动的存储管理不同,Statspack的snapshot是没有自动删除的机制的。也就是说,如果我们放任不管,手工收集的镜像数据会一直保存在数据库中。所以,如果经常使用Statspack进行性能数据收集工作,一定不能忽视空间问题。
 
在9i中,我们需要调用服务器端的脚本来完成创建。注意:这里面我们尽量到服务器端执行,调用服务器端脚本,来防止由于版本不同带来的问题。

SQL> show user

USER 为"SYS"

 

SQL> @?rdbmsadminspcreate

... Installing Required Packages

 

同义词已创建。

 

... Creating PERFSTAT user ...

Choose the PERFSTAT user's password.

Not specifying a password will result in the installation FAILING

 

Specify PERFSTAT password

输入 perfstat_password 的值:  perfstat

perfstat

 

PL/SQL 过程已成功完成。

用户已创建

授权成功。

 

Below are the list of online tablespaces in this database.

Decide which tablespace you wish to create the STATSPACK tables and indexes.  This will also be the PERFSTAT user's default tablespace.
 
 

Specifying the SYSTEM tablespace will result in the installation

FAILING, as using SYSTEM for performance data is not supported.

 

TABLESPACE_NAME                                              CONTENTS

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

CWMLITE                                                     

                                              PERMANENT

 

已选择12行。

 

Specify PERFSTAT user's default  tablespace

输入 default_tablespace 的值:  STPTBL

Using STPTBL for the default tablespace

 

PL/SQL 过程已成功完成。

 

Choose the PERFSTAT user's temporary tablespace.

 

Specifying the SYSTEM tablespace will result in the installation

FAILING, as using SYSTEM for the temporary tablespace is not recommended.

 

Specify PERFSTAT user's temporary tablespace.

输入 temporary_tablespace 的值: TEMP

 

同义词已创建。

 

NOTE:

SPCPKG complete. Please check spcpkg.lis for any errors.

 

脚本spcreate的过程是一个交互式过程。执行过程中我们需要确认三个参数项目:创建用户perfstat的密码、数据表空间和临时表空间。

这个过程设置中,要注意一点:单独使用一个数据表空间作为statspack存储,不要将其放在system里面。

卸载Statspack是比较简单的,相同目录中的脚本spdrop就可以了,本文不进行累述了。

 

2、Statspack使用

 

本质上说,Statspack和AWR相同,都是一种基于采样Sampling的性能监控工具。在早期的版本中,Oracle已经推出了一系列的动态视图来反映数据库和系统“实时”性能情况。而所谓的Snapshot就是在某一个时间点,Oracle程序将这些实时数据保留下来,作为一个snapshot点记录在数据库表中。Statspack和AWR报告都是基于多个Snapshot的做差来形成的。
 
 

Statspack和AWR最明显的差异在于Statspack默认是不会自动进行Snapshot动作,而AWR默认是提供每一小时进行采样的功能的。

 

所以说,AWR便于进行故障时段分析,而Statspack需要故障中或者故障重演。默认执行statspack镜像的方法很简单。

 

 

SQL> conn perfstat/perfstat@ora9i

Connected to Oracle9i Enterprise Edition Release 9.2.0.1.0

Connected as perfstat

 

SQL> exec statspack.SNAP;

PL/SQL procedure successfully completed

 

调用statspack包的snap方法,可以直接收集snapshot。此时采用默认的收集策略。基础表stats$snapshot可以查看到保存的信息。

 

 

SQL> select snap_id, dbid, to_char(snap_time, 'yyyy-mm-dd hh24:mi:ss') snap_time, snap_level from stats$snapshot;
 
 

SNAP_ID      DBID SNAP_TIME          SNAP_LEVEL

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

      1 2629872507 2014-02-07 10:51:30          5

 

注意:我们此处采用了Oracle的默认配置。snapshot方法镜像,我们有很多的选择余地。这些内容留待我们之后讨论。此处目标是创建出一个snapshot。

如果观察perfstat用户下的数据表,我们会发现很多以stats$作为前缀的数据表。这些表中保存的数据就是以snapshot为引领的性能数据。

同AWR一样,生成statspack报告最少要有两个snapshot形成,而且snapshot中间不允许关机启动动作。

 

 

SQL> exec statspack.SNAP;

PL/SQL procedure successfully completed

 

SQL> select snap_id, dbid, to_char(snap_time, 'yyyy-mm-dd hh24:mi:ss') snap_time, snap_level from stats$snapshot;
 
 

SNAP_ID      DBID SNAP_TIME          SNAP_LEVEL

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

      1 2629872507 2014-02-07 10:51:30          5

      2 2629872507 2014-02-07 11:05:00          5

在创建出两个报告的情况下,我们就可以生成报告了。注意:Statspack和AWR报告在生成过程中,有细微差别。Statspack是调用客户端脚本,而AWR核心程序在服务器端的程序包里面。所以,强烈推荐使用服务器端进行报告生成动作。
 
SQL> conn perfstat/perfstat@ora9i

已连接。

SQL>

SQL> @?/rdbms/admin/spreport  //生成脚本

 

Current Instance

~~~~~~~~~~~~~~~~

  DB Id    DB Name      Inst Num Instance

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

 2629872507 ORA9I              1 ora9i

 

Instances in this Statspack schema

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

  DB Id    Inst Num DB Name      Instance    Host

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

 2629872507        1 ORA9I        ora9i        ACCA-8535F03

                                              015

Using 2629872507 for database Id

Using          1 for instance number

 

Specify the number of days of snapshots to choose from

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Entering the number of days (n) will result in the most recent

(n) days of snapshots being listed.  Pressing without

specifying a number lists all completed snapshots.

                                                      Snap

Instance    DB Name        Snap Id  Snap Started    Level Comment

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

 

ora9i        ORA9I                1 07 2月  2014 10:5    5

                                    1

                                  2 07 2月  2014 11:0    5

                                    5

 

Specify the Begin and End Snapshot Ids

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

输入 begin_snap 的值:  1

Begin Snapshot Id specified: 1

 

输入 end_snap 的值:  2

End  Snapshot Id specified: 2

 

Specify the Report Name

~~~~~~~~~~~~~~~~~~~~~~~

The default report file name is sp_1_2.  To use this name,

press to continue, otherwise enter an alternative.

 

输入 report_name 的值:

 

Using the report name sp_1_2

篇幅原因,脚本部分内容省略。同AWR报告生成相同,statspack报告需要交互方式提供三个数据:起始终值snapshot编号、生成报告名称。区别于AWR的html和text双格式报告,statspack支持text格式报告。
 
最后生成报告片段如下:

STATSPACK report for

 

DB Name        DB Id    Instance    Inst Num Release    Cluster Host

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

ORA9I        2629872507 ora9i              1 9.2.0.1.0  NO      ACCA-8535F03

                                                                  015

 

            Snap Id    Snap Time      Sessions Curs/Sess Comment

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

Begin Snap:                  1 07-2月 -14 10:51:30      10      4.5

  End Snap:                  2 07-2月 -14 11:05:00      10      6.4

  Elapsed:                              13.50 (mins)

报告生成,其中包括我们比较熟悉的Top n系列诊断内容。

了解了statspack基本功能之后,我们还要进行探索。相对于AWR,Statspack在采样控制上灵活性是比较高的。不同的设置可以有不同的诊断层次级别。下篇中我们进行详细的讨论。

更多详情见请继续阅读下一页的精彩内容:


    
 
 

您可能感兴趣的文章:

  • 细化解析Oracle 10g STATSPACK的新功能
  • Oracle中暗藏的珍宝:STATSPACK
  • 配置Oracle management server /Oracle启动OMS
  • 在Redhat7.2+Oracle8i如果硬件配置中用P4处理器,对oracle的安装有没有影响(100分)
  • weblogic 中怎样配置 oracle JDBC driver?
  • redhat 8.0+oracle 8.1.7下面配置proc环境的问题
  • linux下怎么配置jdbc 访问oracle ,知情者请告知
  • oracle的jdbc的配置
  • 一个jsp的数据库问题-oracle的服务端如何配置
  • 不会配置oracle怎么办?
  • JDBC from ORACLE 8.1.7的配置问题
  • Linux上怎么配置oracle的ODBC数据源?
  • 请问jboss+oracle文件怎样配置,数据库中文字段不为乱码
  • jdk1.3+tomcat怎样配置oracle驱动程序
  • 请问哪里有 小性机 +linux +oracle 的配置方案?
  • Linux主机下配置Oracle 10G自动启动过程记
  • 如何配置 linux 下 oracle 的 listener .ora 和
  • 求.bash_profile配置oracle详解
  • 用redhat linux8.0+Oracle8i做网络数据库服务器,我需要怎样配置?
  • 配置Oracle RAC需要注意的问题
  • Oracle数据库安装配置示例
  • Linux Apache PHP Oracle 安装配置
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 求助:oracle9在redhat9上安装好后,oracle管理工具会在菜单工具栏上显示吗?
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 有谁知道Oracle8的数据库管理工具是用什么开发工具编写的?
  • Oracle数据库开发工具 SQLTools
  • Oracle 11g 相关工具netca,dbca乱码之解决
  • Oracle数据库对比工具 DBT
  • Oracle开发工具 Oracle SQL Handler
  • Oracle数据库工具 WARTS
  • Oracle发布Oracle SQL Developer 1.2数据库开发工具 帮助用户简化开发工作
  • Oracle管理工具 phpOraAdmin
  • 通过win2000在linux上安装oracle,需要一个什么工具?在哪有下?
  • 使用工具 plsqldev将Excel导入Oracle数据库
  • Oracle数据库备份和恢复工具 RMan
  • Oracle XML 开发人员工具包 XDK
  • Oracle为Eclispe工具发布11g企业包
  • Oracle数据库专享工具:SQL*Loader介绍
  • [Oracle] 常用工具集之SQL*Loader的用法
  • 高分请教:有没有在linux使用的oracle数据库操作工具,如Golden,pl/sqlDeveloper之类.
  • 使用Linux下script工具记录Oracle输出
  • Oracle 高速批量数据加载工具sql*loader使用说明
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle EBS R12 支持 Oracle Database 11g
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,