共计 5124 个字符,预计需要花费 13 分钟才能阅读完成。
Oracle 怎样部署 Statspack 并生成报告,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
Oracle 部署 Statspack
[实验环境]
操作系统 RedHat 5.5
主机名 lxh
数据库版本 Oracle 10.2.0
字符集 GHS16GBK
生产库实例名 prod
[实验过程]
1. 部署 statspack
1.1、创建一个专门用于 statspack 的表空间 statspack
SYS@ prod create tablespace statspack datafile /u01/app/oracle/oradata/prod/statspack01.dbf size 300m;
1.2、以 sysdba 身份执行创建 prefstat 对象的脚本
SYS@ prod @?/rdbms/admin/spcreate.sql
Choose the PERFSTAT user s password
———————————–
Not specifying a password will result in the installation FAILING
Enter value for perfstat_password:oracle
oracle
Choose the Default tablespace for the PERFSTAT user
—————————————————
Below is the list of online tablespaces in this database which can
store user data. Specifying the SYSTEM tablespace for the user s
default tablespace will result in the installation FAILING, as
using SYSTEM for performance data is not supported.
Choose the PERFSTAT users s default tablespace. This is the tablespace
in which the STATSPACK tables and indexes will be created.
TABLESPACE_NAME CONTENTS STATSPACK DEFAULT TABLESPACE
—————————— ——— —————————-
EXAMPLE PERMANENT
STATSPACK PERMANENT
SYSAUX PERMANENT *
TBS1 PERMANENT
TEST3 PERMANENT
USERS PERMANENT
Pressing return will result in STATSPACK s recommended default
tablespace (identified by *) being used.
Enter value for default_tablespace:statspack
Using tablespace STATSPACK as PERFSTAT default tablespace.
Choose the Temporary tablespace for the PERFSTAT user
—————————————————–
Below is the list of online tablespaces in this database which can
store temporary data (e.g. for sort workareas). Specifying the SYSTEM
tablespace for the user s temporary tablespace will result in the
installation FAILING, as using SYSTEM for workareas is not supported.
Choose the PERFSTAT user s Temporary tablespace.
TABLESPACE_NAME CONTENTS DB DEFAULT TEMP TABLESPACE
—————————— ——— ————————–
TEMP TEMPORARY *
Pressing return will result in the database s default Temporary
tablespace (identified by *) being used.
Enter value for temporary_tablespace: 回车
… …
NOTE:
SPCPKG complete. Please check spcpkg.lis for any errors.
PERFSTAT@ prod
Statstack 安装完成。
1.3、设置 statspack 自动产生快照的间隔时间为 15 分钟
[oracle@James ~]$vi /u01/app/oracle/product/10.2.0/db_1/rdbms/admin/spauto.sql
variable jobno number;
variable instno number;
begin
select instance_number into :instno from v$instance;
dbms_job.submit(:jobno, statspack.snap; ,trunc(sysdate+1/96, MI), trunc(SYSDATE+1/96, MI) , TRUE, :instno);
commit;
end;
/
1.4、设置快照的默认级别为 7 级
SYS@ prod exec statspack.modify_statspack_parameter(i_snap_level=
2. 产生 statspack 报告
2.1、启动 statspack 的自动快照
SCOTT@ prod conn perfstat/oracle
PERFSTAT@ prod @?/rdbms/admin/spauto
2.2、验证 statspack 自动生成的报告
PERFSTAT@prod alter session set nls_date_format= yyyy-mm-dd hh34:mi:ss
PERFSTAT@prod select snap_id,snap_time,snap_level from stats$snapshot order by snap_time;
SNAP_ID SNAP_TIME SNAP_LEVEL
———- ——————- ———-
1 2014-08-25 17:52:02 7
2 2014-08-25 19:05:03 7
3 2014-08-25 19:20:04 7
4 2014-08-25 19:35:05 7
5 2014-08-25 19:50:05 7
6 2014-08-25 20:05:01 7
2.3、生成 statspack 分析报告
SQL @?/rdbms/admin/spreport
Current Instance
~~~~~~~~~~~~~~~~
DB Id DB Name Inst Num Instance
———– ———— ——– ————
199802235 PROD 1 prod
Instances in this Statspack schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DB Id Inst Num DB Name Instance Host
———– ——– ———— ———— ————
199802235 1 PROD prod lxh
Using 199802235 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 return without
specifying a number lists all completed snapshots.
Listing all Completed Snapshots
Snap
Instance DB Name Snap Id Snap Started Level Comment
———— ———— ——— —————– —– ——————–
prod PROD 1 25 Aug 2014 17:52 7
2 25 Aug 2014 19:05 7
3 25 Aug 2014 19:20 7
4 25 Aug 2014 19:35 7
5 25 Aug 2014 19:50 7
6 25 Aug 2014 20:05 7
Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap:2
Enter value for end_snap: 3
Enter value for report_name:
@?/rdbms/admin/spreport
Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 3
Enter value for end_snap: 4
Enter value for report_name:
Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 4
Enter value for end_snap: 5
Enter value for report_name:
Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 5
Enter value for end_snap: 6
Enter value for report_name:
2.4、取消 statspack 自动生成快照
查看 job ID
PERFSTAT@ prod select job,log_user,last_date,next_date from user_jobs;
JOB LOG_USER LAST_DATE NEXT_DATE
———- —————————— ——————- ——————-
22 PERFSTAT 2014-08-25 20:05:01 2014-08-25 20:20:00
PERFSTAT@ prod exec dbms_job.remove(22
关于 Oracle 怎样部署 Statspack 并生成报告问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注丸趣 TV 行业资讯频道了解更多相关知识。