Oracleの障害や状況調査で役に立つStatspackレポートをテキスト形式で出力するための方法をメモ的に。SEライセンスでも利用できるのでStatspackは便利です。
まずはSQLPLUSにperfstatユーザーで接続します。
# su - oracle $ sqlplus perfstat/[perfstatユーザーのパスワード]
続いてspreport.sqlを実行してStatspackをコマンドモードで出力します。
SQL> @?/rdbms/admin/spreport.sql
スナップショットのリストがズラズラっと表示されますので、解析したい期間の始めのスナップショットIDと終わりのスナップショットIDを入力します。
Specify the Begin and End Snapshot Ids ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ begin_snapに値を入力してください: 19198 Begin Snapshot Id specified: 19198 end_snapに値を入力してください: 19199 End Snapshot Id specified: 19199
ファイル名の入力を求められますがデフォルトのままで別にいいのでそのままEnter。
Specify the Report Name ~~~~~~~~~~~~~~~~~~~~~~~ The default report file name is sp_19198_19199. To use this name, press <return> to continue, otherwise enter an alternative. report_nameに値を入力してください:
あとはレポートがズラズラ~っと表示されて完了です。
出力されたレポートはカレントディレクトリに保存されてますので確認してみてください。
$ ls sp_19198_19199.lst