简单说明

Statspack主要用于永久存储performance statistics 信息

只有作为sysdba连接时才能安装Statspack。

然后改目录到#cd $ORACLE_HOME/rdbms/admin

>@spcreate.sql

然后它会自动提示你输入密码,使用的表空间,临时表空间。

然后安装成功。

详细说明

Statspack是oracle强大的状态收集及性能诊断工具,是DBA及数据库相关人员进行问题诊断的重要手段,是DBAD的一大利器
1、系统参数设置
先查询系统参数
show parameter job_queue_processes
show parameter timed_statistics
如果值分别为0和false,则做如下更改
alter system set job_queue_processes = 10;
alter system set timed_statistics = true;
timed_statistics设置为true对系统的性能有一定的影响,再数据采样结束后,把该值设置为false,该参数收集的时间信息存储在v$sesstats和v$sysstats等动态性能视图中

2、安装Statspack
查询数据库实例名和版本 select instance_name,host_name,version,startup_time from v$instance;
查询物理文件名及路径 select file_name from dba_data_files;

//创建表空间
create tablespace Statspack datafile 'E:\ORACLE\ORADATA\DB2\Statspack01.dbf' size 500M

安装
@spcreate
按照提示输入表空间,密码,临时表空间等,如果出现错误会生成一个spcpkg.lis错误文件,打开该文件可以看到详细的错误信息,并重新运行@spdrop.sql来删除刚才创建的对象,有时候运行@spcreate会提示找不到文件,可以输入完整路径,如:@E:\oracle\ora90\rdbms\admin\spcreate.sql
至此,Statspack就安装完成了

3、测试安装好的 Statspack
执行stataspack.snap可以产生系统快照,运行两次,然后执行@spreport.sql就可以生成一个基于两个时间点的报告 execute statspack.snap
隔一段时间再运行一次 execute statspack.snap
运行@spreport.sql就可以生成这段时间内的报告

statspack 收集数据的级别,statspack一共有三个级别,默认值是5
level0:一般性能统计。包括等待事件、系统事件、系统统计、回滚段统计、行缓存、SGA、会话、锁、缓冲统计等
level5:增加sql语句
level10:增加字锁统计

收集数据级别
可通过以下语句指定收集级别
execute statspack.snap(i_snap_level=>0,i_modify_parameter=>'true');
如果只是想本次改变收集级别,可以省略i_modify_parameter=>'true'
execute statspack.snap(i_snap_level=>0);
"=>"是等于的意思,而非大于等于0级别的意思

快照门限
execute_th         SQL语句执行的数量,默认是100
disk_reads_th      SQL语句执行的磁盘读入数量,默认是1000
parse_calls_th     SQL语句执行的解析调用的数量,默认是1000
buffer_gets_th     SQL语句执行的缓冲区获取的数量,默认是10000

例如:
execute statspack.modify_statspack_parameter(i_buffer_gets_th=>100000,i_disk_reads_th=>10000);

4、规划自动任务
可用@spauto.sql来定义自动任务
这个job里定义了收集数据的时间间隔
begin
  select instance_number into :instno from v$instance;
  dbms_job.submit(:jobno, 'statspack.snap;', trunc(sysdate+1/24,'HH'), 'trunc(SYSDATE+1/24,''HH'')', TRUE, :instno);
  commit;
end;
1/24  每小时运行一次    格式:HH
1/48  每半小时运行一次  格式:MI
1/144 每十分钟运行一次  格式:MI
1/288 每五分钟运行一次  格式:MI

执行后可用下列语句查看任务运行的时间
select job, next_date, next_sec from user_jobs where job = :jobno;

5、移除定时任务
execute dbms_job.remove('1');
其中1为作业队列号

6、删除历史数据
删除stats$snapshot表中的相应数据,其他表中的数据也会相应的级连删除
select max(snap_id) from stats$snapshot;
delete from stats$snapshot where snap_id <= 4;
可以更改snap_id的范围保留需要的数据

也可以用@sptrunc.sql脚本删除所有的数据

0环境设置 - Statspack设置的更多相关文章

  1. 转 Visual C++6.0 与matlab联合编程(2)----Visual C++6.0 环境下编译和调试MEX文件

    我的最初想法是利用matlab的mex命令调用C++程序生成动态链接库的,但是测试程序(文中另附)通过了,自己的实际应用程序却没有过.还是把方法贴在这儿,以便自己以后进行整理. http://shij ...

  2. jdk1.8.0环境变量设置

    jdk1.8.0环境变量设置 1.jdk安装完毕 打开如下链接:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloa ...

  3. windows和linux中搭建python集成开发环境IDE——如何设置多个python环境

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  4. Eclipse的安装和java环境变量的设置

    首先准备工作是要下载好Eclipse和java JDK. 必须要注意的是,Eclipse和java JDK必须下载同一位数的版本,即64位同为64位,32位同为32位.否则在安装完成运行Eclipse ...

  5. u-boot 环境变量参数设置

    今天本来是烧写内核,结果一不小心把uboot也整不能用了,无奈之下只好重新烧个uboot,等都弄好以后,发现系统还是启动不了,原来是启动参数设置不对,于是找到了这篇文章,//是我添加的内容. 原文地址 ...

  6. Linux环境变量的设置和查看方法

    1. 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ ech ...

  7. uboot环境变量(设置bootargs向linux内核传递正确的参数)

    这是我uboot的环境变量设置,在该设置下可以运行initram内核(从内存下载到nandflash再运行),但是运行nfs根文件系统的时候一直出错,各种错误.查看了很多资料后猜想应该是uboot传递 ...

  8. Linux下Jdk的安装和jdk环境变量的设置

    我们在Linux下安装系统软件的时候,经常遇到一些系统环境变量配置的问题.什么是环境变量?如何定制环境变量?我将在下面做一些介绍.一.什么是环境变量?Linux是一个多用户的操作系统.多用户意味着每个 ...

  9. jdk环境变量的设置

    一.jdk下载网址 https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 二.环境变 ...

随机推荐

  1. 求一个String 类型数组是不是都是回文,是返回1,否则返回-1

    package 回文; public class yhisHuiWen { public static void ishuiwen(String arr[]){ boolean flag=true;/ ...

  2. Andriod docs加载速度慢的问题解决

    网上找了个类, import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import ja ...

  3. Linux5.8下安装PhpMyadmin无法关联php-mcrypt问题

    一.yum安装php-mcrypt   ##发现没办法安装 原来CentOS 官方默认不在对mcrypt模块 进行支持,所以必须另想办法折腾了2个小时总算搞定,这里主要使用了Fedora的扩展库, E ...

  4. jeecms子栏目或者文章页导航父栏目选中解决方法

    jeecms在子栏目或者文章页导航父栏目选中,看例子 <div class="nav"> <ul> [@cms_channel_list ] <li ...

  5. 【PHP】phpcms 关联连接修复

    function _keylinks($txt, $replacenum = '',$link_mode = 1) { $keywords = $this->data['keywords']; ...

  6. rtx信息泄漏利结合弱口令导致被批量社工思路

    腾讯通RTX(Real Time eXchange)是腾讯公司推出的企业级实时通信平台. rtx server 存在暴露用户信息的漏洞,通过web访问 http://RtxServerIp:8012/ ...

  7. 用Redis bitmap统计活跃用户、留存

    Spool的开发者博客,描述了Spool利用Redis的bitmaps相关的操作,进行网站活跃用户统计工作. 原文:http://blog.getspool.com/2011/11/29/fast-e ...

  8. Linux 挂载2T以上存储

    在生产环境中,我们会遇到分区大于2T的磁盘(比如:添加一个3TB的存储),由于MBR分区表只支持2T磁盘,所以大于2T的磁盘必须使用GPT分区表 而fdisk是不支持GPT分区的,我们可以使用part ...

  9. MySQL SHOW 语句大全

    常用的mysql show命令如下: 1.show databases;        显示mysql中所有数据库 2.show tables [from databases] ;     显示当前数 ...

  10. ios/mac/COCOA系列 -- UIALertVIew 学习笔记

    最近在学习ios开发,学习的书籍<ios7 Pragramming cookbook>,做笔记的目的以后方便查看.笔记形式是小例子,将书上的例子书写完整. UIAlertViewClass ...