ついったー


最近読んだ本(amazon版)

最近のトラックバック

« 2009年12月 | トップページ | 2010年3月 »

Oracle パフォーマンスレポート ツール STATSPACKを利用する

仕事で資料を残さなきゃいけなくってまとめたので、せっかくだから自分のメモとして。

◎パフォーマンスレポート ツール STATSPACKを利用する

Oracle10gには、標準で用意されています。が、設定はされていないので…
出力の見方は、そのうち…作るかなぁ…?

※本来は、運用開始前に導入します。

■表領域の準備
 領域名:TOOLS (自由です)
 領域サイズ:400MB (最低64MB以上)
 エクステントサイズ:1MB(オススメ値:100K、1MB、5MB)

■インストールスクリプトを実行する(SYSDBAユーザーにて)
SQL> @?/rdbms/admin/spcreate.sql
PERFSTATユーザーが作成されます。パスワードは自由です
DEFAULT表領域に準備した表領域を設定(TOOLS)
TEMPORALY表領域には、TEMPを設定(別個に作成しても良い)


■スナップショットを定期的(1時間毎)に取得するようにスケジュールする(PERFSTATユーザー)
SQL> @?/rdbms/admin/spauto.sql

■定期的な取得を30分毎に変更する(PERFSTATユーザー)
SQL> EXECUTE DBMS_JOB.INTERVAL (:jobno, 'SYSDATE+(1/48)');

■スナップショット・レベルを変更する(PERFSTATユーザー)
  デフォルトはレベル5
  +------------+-----------------------------------------------------------+
  |i_snap_level| 取得データ |
  +------------+-----------+---------+---------+------------+--------------+
  | 基本統計 |アドバイス | SQL統計 | SQL詳細 | セグメント | 親・子ラッチ |
  +------------+-----------+---------+---------+------------+--------------+
  | レベル 0 | ○ | ○ | | | |
  | レベル 5 | ○ | ○ | ○ | | |
  | レベル 6 | ○ | ○ | ○ | | |
  | レベル 7 | ○ | ○ | ○ | ○ | |
  | レベル 10 | ○ | ○ | ○ | ○ | ○ |
  +------------+-----------+---------+---------+------------+--------------+
SQL> EXEC STATSPACK.MODIFY_STATSPACK_PARAMETER (i_snap_level=>7);
(SQL> EXECUTE STATSPACK.SNAP(i_snap_level => 7))


■レポートを参照する(PERFSTATユーザー)
※日本語だとうまく出力されないので、英語で。
DOS> set NLS_LANG=American_America.UTF8
SQL> @?/rdbms/admin/spreport.sql
  例)
  *************************
Current Instance
~~~~~~~~~~~~~~~~
DB Id DB Name Inst Num Instance
----------- ------------ -------- ------------
0000000000 XXXX 1 xxxx

Instances in this Statspack schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

DB Id Inst Num DB Name Instance Host
----------- -------- ------------ ------------ ------------
0000000000 1 XXXX xxxx DB-SERVER

Using 0000000000 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 without
specifying a number lists all completed snapshots.

Listing all Completed Snapshots

Snap
Instance DB Name Snap Id Snap Started Level Comment
------------ ------------ --------- ----------------- ----- --------------------
xxxx XXXX 1 26 Aug 2009 21:20 7

34627 25 Jan 2010 00:19 7
34628 25 Jan 2010 00:49 7
34629 25 Jan 2010 01:19 7
34630 25 Jan 2010 01:50 7
34631 25 Jan 2010 02:20 7

Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 34652
Begin Snapshot Id specified: 34652

Enter value for end_snap: 34741
End Snapshot Id specified: 34741

Specify the Report Name
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name is sp_34652_34741. To use this name,
press to continue, otherwise enter an alternative.

Enter value for report_name:

Using the report name sp_34652_34741

STATSPACK report for

Database DB Id
Instance Inst Num
Startup Time Release
RAC
~~~~~~~~ -----------
------------ --------
--------------- -----------
---
0000000000 xxxx 1 23-Jan-10 13:55
10.2.0.1.0 NO

Host Name: DB-SERVER Num CPUs: 4
Phys Memory (MB): 4,091
~~~~

Snapshot Snap Id Snap Time Sessions Curs/Sess Comment
~~~~~~~~ ---------- ------------------ -------- --------- -------------------
Begin Snap: 34652 25-Jan-10 08:51:08 36 7.4
End Snap: 34741 25-Jan-10 13:21:48 83 4.0
Elapsed: 270.67 (mins)

Cache Sizes Begin End
~~~~~~~~~~~ ---------- ----------
Buffer Cache: 848M 832M Std Block Size: 8K
Shared Pool Size: 160M 176M
Log Buffer: 6,860K

Load Profile Per Second Per Transaction
~~~~~~~~~~~~ --------------- ---------------
Redo size: 6,017.10 1,855.21
(中略)
Tablespace IO Stats DB/Inst: ORCL/orcl Snaps: 34652-34741
->ordered by IOs (Reads + Writes) desc

Tablespace
------------------------------
Av Av Av Av Buffer Av Buf
Reads Reads/s Rd(ms) Blks/Rd Writes Writes/s Waits Wt(ms)
-------------- ------- ------ ------- ------------ -------- ---------- ------
SYSAUX
514 0 2.9 1.1 3,667 0 0 0.0
TOOLS
1,030 0 2.8 1.0 2,498 0 0 0.0
SYSTEM
1,547 0 3.9 1.0 889 0 0 0.0
(中略)
File IO Stats DB/Inst: ORCL/orcl Snaps: 34652-34741
->Mx Rd Bkt: Max bucket time for single block read
->ordered by Tablespace, File

Tablespace Filename
------------------------ ----------------------------------------------------
Av Mx Av
Av Rd Rd Av Av Buffer BufWt
Reads Reads/s (ms) Bkt Blks/Rd Writes Writes/s Waits (ms)
-------------- ------- ----- --- ------- ------------ -------- ---------- ------
SYSAUX D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF
514 0 2.9 64 1.1 3,667 0 0

SYSTEM D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF
1,547 0 3.9 32 1.0 889 0 0

TOOLS D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TOOLS_REORG0.D
1,030 0 2.8 16 1.0 2,498 0 0
(中略)
-------------------------------------------------------------
File Read Histogram Stats DB/Inst: ORCL/orcl Snaps: 34652-34741
->Number of single block reads in each time range
->ordered by Tablespace, File

Tablespace Filename
------------------------ ----------------------------------------------------
0 - 2 ms 2 - 4 ms 4 - 8 ms 8 - 16 ms 16 - 32 ms 32+ ms
------------ ------------ ------------ ------------ ------------ ------------
TOOLS D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TOOLS_REORG0.D
342 430 258 3 0 0
(中略)
Segments by Logical Reads DB/Inst: XXXX/xxxx Snaps: 34652-34741
-> End Segment Logical Reads Threshold: 10000
-> Pct Total shows % of logical reads for each top segment compared with total
logical reads for all segments captured by the Snapshot

Subobject Obj. Logical Pct
Owner Tablespace Object Name Name Type Reads Total
---------- ---------- -------------------- ------------ ----- ------------ -----
SYS SYSTEM I_HH_OBJ#_INTCOL# INDEX 318,064 11.1
SYS SYSAUX SYS_IOT_TOP_8802 INDEX 234,512 8.2
(中略)
undo_management AUTO
undo_tablespace UNDOTBS1
user_dump_dest D:\ORACLE\PRODUCT\10.2.0\ADMIN\OR
-------------------------------------------------------------

End of Report ( sp_34652_34741.lst )
  *************************
  SQLPLUSを実行したフォルダに「sp_34652_34741.lst」が出来ています。

■SQLレポートを参照する(PERFSTATユーザー)
 上記のレポート中から「SQL ordered by」のキーワードを探す.
  *************************
SQL ordered by CPU DB/Inst: ORCL/orcl Snaps: 34652-34741
-> Resources reported for PL/SQL code includes the resources used by all SQL
statements called by the code.
-> Total DB CPU (s): 562
-> Captured SQL accounts for 9.1% of Total DB CPU
-> SQL reported below exceeded 1.0% of Total DB CPU

CPU CPU per Elapsd Old
Time (s) Executions Exec (s) %Total Time (s) Buffer Gets Hash Value
---------- ------------ ---------- ------ ---------- --------------- ----------
26.84 535 0.05 4.8 30.58 19,340 1206412919
Module: OEM.SystemPool
BEGIN EMD_NOTIFICATION.QUEUE_READY(:1, :2, :3); END;
  *************************
SQL> @?/rdbms/admin/sprepsql.sql
  例)
  *************************

Current Instance
~~~~~~~~~~~~~~~~

DB Id DB Name Inst Num Instance
----------- ------------ -------- ------------
0000000000 XXXX 1 xxxx

Instances in this Statspack schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

DB Id Inst Num DB Name Instance Host
----------- -------- ------------ ------------ ------------
0000000000 1 XXXX xxxx DB-SERVER

Using 0000000000 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 without
specifying a number lists all completed snapshots.

Listing all Completed Snapshots

Snap Snap
Instance DB Name Id Snap Started Level Comment
------------ ------------ --------- ----------------- ----- --------------------
xxxx XXXX 1 26 Aug 2009 21:20 7

34652 25 Jan 2010 08:51 7
34661 25 Jan 2010 09:21 7
34671 25 Jan 2010 09:51 7
34681 25 Jan 2010 10:21 7
34691 25 Jan 2010 10:51 7
34701 25 Jan 2010 11:21 7
34711 25 Jan 2010 11:51 7
34721 25 Jan 2010 12:21 7
34731 25 Jan 2010 12:51 7
34741 25 Jan 2010 13:21 7
34751 25 Jan 2010 13:51 7
34761 25 Jan 2010 14:21 7

Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 34652
Begin Snapshot Id specified: 34652

Enter value for end_snap: 34741
End Snapshot Id specified: 34741

Specify the old (i.e. pre-10g) Hash Value
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for hash_value: 1206412919
Hash Value specified is: 1206412919

Specify the Report Name
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name is sp_34652_34741_1206412919. To use this name,
press to continue, otherwise enter an alternative.

Enter value for report_name:

Using the report name sp_34652_34741_1206412919


STATSPACK SQL report for Old Hash Value: 1206412919 Module: OEM.SystemPool

DB Name DB Id Instance Inst Num Release RAC Host
------------ ----------- ------------ -------- ----------- --- ----------------
XXXX 0000000000 xxxx 1 10.2.0.1.0 NO DB-SERVER

Start Id Start Time End Id End Time Duration(mins)
--------- ------------------- --------- ------------------- --------------
34652 25-Jan-10 08:51:08 34741 25-Jan-10 13:21:48 270.67

SQL Statistics
~~~~~~~~~~~~~~
-> CPU and Elapsed Time are in seconds (s) for Statement Total and in
milliseconds (ms) for Per Execute
% Snap
Statement Total Per Execute Total
--------------- --------------- ------
Buffer Gets: 19,340
36.1 .25
Disk Reads: 2
0.0 .01
Rows processed: 0
0.0
CPU Time(s/ms): 27
50.2
Elapsed Time(s/ms): 31
57.2
Sorts: 0
.0
Parse Calls: 535
1.0
Invalidations: 0
Version count: 1
Sharable Mem(K): 16
Executions: 535

SQL Text
~~~~~~~~
BEGIN EMD_NOTIFICATION.QUEUE_READY(:1, :2, :3); END;

Plans in shared pool between Begin and End Snap Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Shows the Execution Plans found in the shared pool between the begin and end
snapshots specified. The values for Rows, Bytes and Cost shown below are those
which existed at the time the first-ever snapshot captured this plan - these
values often change over time, and so may not be indicative of current values
-> Rows indicates Cardinality, PHV is Plan Hash Value
-> ordered by Plan Hash Value

--------------------------------------------------------------------------------
| Operation | PHV/Object Name | Rows | Bytes| Cost |
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

End of Report
  *************************


■レポートを削除する(PERFSTATユーザー)
 スナップショットが溜まると表領域の使用率も増えるので、不要なものは削除します。
SQL> @?/rdbms/admin/sppurge.sql
  例)
  *************************
Database Instance currently connected to
========================================

Instance
DB Id DB Name Inst Num Name
----------- ---------- -------- ----------
0000000000 XXXX 1 xxxx


Snapshots for this database instance
====================================

Base- Snap
Snap Id Snapshot Started line? Level Host Comment
-------- --------------------- ----- ----- --------------- --------------------
32997 18 1月 2010 00:24:2 7 DB-SERVER
32998 18 1月 2010 00:54:3 7 DB-SERVER
(中略)
34721 25 1月 2010 12:21:3 7 DB-SERVER
34731 25 1月 2010 12:51:4 7 DB-SERVER
34741 25 1月 2010 13:21:4 7 DB-SERVER


Warning
~~~~~~~
sppurge.sql deletes all snapshots ranging between the lower and
upper bound Snapshot Id's specified, for the database instance
you are connected to. Snapshots identified as Baseline snapshots
which lie within the snapshot range will not be purged.

It is NOT possible to rollback changes once the purge begins.

You may wish to export this data before continuing.


Specify the Lo Snap Id and Hi Snap Id range to purge
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
losnapidに値を入力してください: 32997
Using 32997 for lower bound.

hisnapidに値を入力してください: 34626
Using 34626 for upper bound.

Deleting snapshots 32997 - 34626.
行は切り捨てられます。


Number of Snapshots purged: 335
Purge of specified Snapshot range complete.
  *************************


■レポートを"全て"削除する(PERFSTATユーザー)
SQL> @?/rdbms/admin/sptrunc.sql

■スケジュールを削除する(PERFSTATユーザー)
job_numberを調べる
SQL> select job,to_char(next_date,'YYYYMMDD HH24:MI:SS'),what from user_jobs;
この結果でWHAT が 「statspack.snap;」のものが対象
SQL> EXECUTE DBMS_JOB.REMOVE(job_number);


■アンインストールする(SYSDBAユーザーにて)
SQL> @?/rdbms/admin/spdrop.sql


■参考URI
 Oracleデータベースの性能対策機能 ~StatspackとDiagnostics Packを使いこなす~
 http://otn.oracle.co.jp/skillup/stats_diag/1/index.html

 パフォーマンスセラピー
 http://perfopy.ashisuto.co.jp/statspack01.html

 パフォーマンステストでの STATSPACK の取得について
 http://d.hatena.ne.jp/yohei-a/20090729/1248835068


ツナバーガー生姜醤油味

ツナバーガー生姜醤油味

万歩計 Walking style HJ-710IT

ずっと使っていたものだが、最近調子が悪い。
時間がずれる、勝手にリセットされる…
そして、電池がすぐ無くなる。
歩数はきちんと計測しているようなのだが…


他のものも見たが、今までの蓄積データがあるので結局同じものを買うことにする。

[メモ] mhp2g オトモスキル

オトモスキル開放の条件のうちモンスターを倒すもの

2/6-6 属性攻撃強化    集2 リオレウス討伐:リオレウス
3/6-1 属性攻撃【毒】    村4 見えざる飛竜:イーオス
3/6-2 属性攻撃【麻痺】   村3 砂に潜む巨大:ゲネポス
3/6-3 属性攻撃【睡眠】   村3 砂漠の水竜:ガノトトス
3/6-4 状態異常攻撃強化  村3 砂漠の水竜:ガノトトス
3/6-6 防音の術        村1 忍び寄る気配:ティガレックス
4/6-1 攻撃力強化の術   集2 リオレウス討伐:リオレウス
4/6-2 防御力強化の術   村4 見えざる飛竜:バサルモス
4/6-3 体力強化の術     村2 珍獣の中の:ババコンガ
4/6-4 ガード確率強化の術 村3 砂に潜む巨大:ダイミョウザザミ
4/6-5 高速作業の術     村1 忍び寄る気配:ティガレックス
6/6-1 毒無効の術      村4 見えざる飛竜:イーオス

下記のクエストを順番にこなして対象のモンスターを倒していけばOK
村1 忍び寄る気配:ティガレックス
村2 珍獣の中の珍獣:ババコンガ
村3 砂漠の水竜:ガノトトス
村3 砂に潜む巨大蟹!:ダイミョウザザミ、ゲネポス
村4 見えざる飛竜:バサルモス、イーオス
集2 リオレウス討伐:リオレウス

バサルモスが堅くてちょっと面倒な以外は、G級に上がるくらいの装備を持っていれば
問題ない。特にアイテムも不要。全部下位なので、アイテムボックスのものだけでOK。

全て回ったらあとは、Lv20まであげれば、全てのスキルが開放される。

« 2009年12月 | トップページ | 2010年3月 »