STATSPACKめも

●スケジュール確認
select * from dba_jobs;

 

●取得状況 PERFSTATユーザ
alter session set nls_date_format='yyyy/mm/dd HH24:MI:SS';
select snap_id,snap_time from stats$snapshot order by snap_id;

 

●レポート取得(インスタンス指定は、sprepins) PERFSTATユーザ
@?/rdbms/admin/spreport

 

sqlレポート取得(インスタンス指定は、sprsqins) PERFSTATユーザで
@?/rdbms/admin/sprepsql

 

●STATSPACKの構築(sysで実施)
@?/rdbms/admin/spcreate

 

●STATSPACKの定義削除(sysで実施)
@?/rdbms/admin/spdrop

 

●STATSPACK自動スケジューリング
@?/rdbms/admin/spauto

 

●STATSPACK JOB間隔の変更
execute dbms_job.interval(1,'SYSDATE+(1/48)');

 

●過去のsnapshotを削除
-- スナップショットIDの範囲を指定して削除
execute statspack.purge(i_begin_snap=>91, i_end_snap=>115, i_extended_purge=>TRUE)
--特定日時以前に取得したスナップショットを削除
execute statspack.purge(i_purge_before_date=>to_date('20001231','YYYYMMDD'), i_extended_purge=>TRUE)
--指定日数分のスナップショットを残して削除
execute statspack.purge(i_num_days=>30, i_extended_purge=>TRUE)

 

●スナップショットレベルの確認
select snap_level from stats$statspack_parameter;

 

●スナップショットレベルの変更(スナップショットレベルを7に変更する場合)
exec statspack.modify_statspack_parameter (i_snap_level=>7);

 

●STATSPACKをexportする
exp PERFSTAT/<pass> parfile=$ORACLE_HOME/rdbms/admin/spuexp.par log=spuexp.log

 

●STATSPACKをimportする PERFSTATユーザ
spool dis.sql
select 'ALTER TABLE '||table_name||' DISABLE CONSTRAINT '||constraint_name||';' from user_constraints;
spool off
@dis
imp PERFSTAT/<pass> file=<expしたdmp> log=spuimp.log ignore=y

 

●初期化パラメータの確認
select * from stats$parameter;

 

SQL概要確認
select * from STATS$SQL_SUMMARY;

 

SQL実行計画取得
select * from stats$sql_plan;

 

sqlと実行計画との関連把握
select * from stats$sql_plan_usage;

 

SQLテキスト取得
select + from stats$sqltext;