您的位置:首页 > 数据库 > Oracle

ORACLE成效诊断―进修statspack笔记[装置与测试]

2011-03-07 20:13 141 查看
来源:网海拾贝

阐明');:oracle8.1.6开始引进statspack,statspack是诊断oracle成效的强有力的器械

装置前准备

A.首先是系统参数切实其实认:
job_query_processes:为了设立设置装备陈设主动使命,实行数据收集,该参数要大于0
time_statistics:为了收集应用系统计时信息等,必要将其设置为TRUE

B.建议最好是单独的为perfstat用户(即装置statspack要建的用户)单独设立设置装备陈设数据表空间和一时表空间,数据表空间至少要有100M的空闲空间,否则创建statspack器械会失败,要是方案临时运用statspack,可以思考建稍大些的数据表空间。

装置

A.装置脚本
装置的脚本地点目录是$ORACLE_HOME/rdbms/admin,在oracle8.1.6版本装置脚本是statscre.sql,之后8.1.7版本开始等于spcreate.sql,装置所需用户在9i之前的必要internal或许拥有sysdba权限的用户,9i必要的用户是sys(9i已经不存在internal用户了)

实行装置脚本如下:

SQL> @$ORACLE_HOME/rdbms/admin/spcreate

B.在装置历程中,必要填写perfstat用户的密码,而且选择perfstat用户的数据表空间和一时表空间,装置完成之后,不雅察响应的.lis文件查抄装置能否精确无误,有成绩可以议决spdrop.sql完成statspack的卸载,从头运转spcreate.sql完成statspack的装置。

测试

最复杂的statspack呈报天生,运转两次statspack.snap,然后运转spreport.sql天生一个基于两个时辰点的呈报。要是是8.1.7.3之前版本的Oracle,必要修正spcpkg.sql,要将substr修正为substrb,如下位置:

select l_snap_id

, p_dbid

, p_instance_number

, substr(sql_text,1,31) à substrb(sql_text,1,31)

设立设置装备陈设复杂的statspack呈报历程如下:

SQL> execute statspack.snap

PL/SQL procedure successfully completed.

SQL> execute statspack.snap

PL/SQL procedure successfully completed.

SQL> @$ORACLE_HOME/rdbms/admin/spreport

Spreport的实行历程中会列出必要选择的快照,你必要填写该呈报描绘的开始和终了的快照序号,并填写呈报的文件名,固然可以不填,运用默许的呈报文件名,默许的会天生在目录$ORACLE_HOME/rdbms/admin中

如许就可以验证statspack已经精确的装置完成了

主动收集statspack快照

正常在真正的情形下,我们是必要承继的采样一段时辰,如许天生的statspack才气更好的反应系统的近况,我们是可以议决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/24,'HH'), 'trunc(SYSDATE 1/24,''HH'')', TRUE, :instno);

commit;

end;

/
垂危是修正1/24这个值,目下当今是一个小时主动收集一次数据,要是要窜改为半个小时收集一次数据就修正为1/48,同理,终了或大或小的修正。

实行后,可以在spauto.lis文件中看到今后主动收集数据的job号等信息。当想要天生statspack呈报的时辰,只需选择任何两个不跨越停机时辰的快照序号就可以了。看重,statspack是不能跨越停机的。

版权声明:
原创作品,答应转载,转载时请务必以超链接方式标明文章 原始理由 、作者信息和本声明。否则将清查法则责任。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: