システム統計情報の収集
アップグレード後にはシステム統計情報を再収集しましょう。CPUやI/Oに関するシステム統計情報は、コスト・ペース・オプティマイザ(CBO)にとって重要な入力情報です。CBOが正しい最適化処理を行うためには、通常の負荷状態のときにシステム統計情報を収集する必要があります。システム統計情報を収集するには、以下のDBMS_STASパッケージをSYSDBAで実行します。
SQL> CONNECT / AS SYSDBA 接続されました。 SQL> EXECUTE DBMS_STATS.GATHER_SYSTEM_STATS('start'); PL/SQLプロシージャが正常に完了しました。 SQL> EXECUTE DBMS_STATS.GATHER_SYSTEM_STATS('stop'); PL/SQLプロシージャが正常に完了しました。
収集したシステム統計情報を確認するには、以下のSQL文をSYSDBAで実行します。
SQL> CONNECT / AS SYSDBA 接続されました。 SQL> COLUMN NAME FORMAT a20 SQL> COLUMN VALUE FORMAT 999,990 SQL> COLUMN INFO FORMAT a30 SQL> SQL> SELECT PNAME NAME, PVAL1 VALUE, PVAL2 INFO FROM AUX_STATS$; NAME VALUE INFO -------------------- -------- ------------------------------ STATUS COMPLETED DSTART 02-21-2011 15:50 DSTOP 02-21-2011 15:51 FLAGS 1 CPUSPEEDNW 1,220 IOSEEKTIM 10 IOTFRSPEED 4,096 SREADTIM 94,449 MREADTIM CPUSPEED 1,130 MBRC MAXTHR SLAVETHR 13行が選択されました。
各システム統計値は、以下のような意味を持ちます。
システム統計名 | 意味 |
STATUS | COMPLETED:完了 AUTOGATHERING:収集中 |
DSTART | 収集開始時間 |
DSTOP | 収集停止時間 |
CPUSPEEDNW | インスタンス起動時のCPU速度(MHz) |
CPUSPEED | OracleからみたCPU速度(MHz) |
IOSEEKTIM | シークタイム+OSオーバーヘッド時間(ミリ秒) |
IOTFRSPEED | 1ブロックの平均転送速度(バイト/ミリ秒) |
SREADTIM | 単一ブロックの平均リードタイム(ミリ秒) |
MREADTIM | マルチブロックの平均リードタイム(ミリ秒) |
MBRC | マルチブロックの平均リード回数 |
MAXTHR | 最大I/Oスループット(バイト/秒) |
SLAVETHR | I/Oスレーブ単位での平均I/Oスループット(バイト/秒) |