Oracle - パフォーマンスチューニング - キャッシュのヒット率を取得する
データベースバッファキャッシュのヒット率
(ヒット率が低い場合(85%以下),初期化パラメータdb_block_buffersを大きくする)
SELECT TO_CHAR((1 - (A.VALUE / (B.VALUE + C.VALUE))) * 100, '99.99') || '%' "HIT RATIO" FROM V$SYSSTAT A, V$SYSSTAT B, V$SYSSTAT C WHERE A.NAME = 'PHYSICAL READS' AND B.NAME = 'DB BLOCK GETS' AND C.NAME = 'CONSISTENT GETS';
ディクショナリキャッシュのヒット率を取得
(ヒット率が低い場合(90%以下),初期化パラメータshared_pool_sizeを大きくする)
SELECT SUM(GETS) TOTAL_GETS, SUM(GETMISSES) TOTAL_MISSES, TO_CHAR((1 - SUM(GETMISSES)/SUM(GETS)) * 100, '990.99')|| '%' HIT_RATIO FROM V$ROWCACHE;
ライブラリキャッシュ(共有SQL領域)のヒット率を取得する
共有プールのライブラリキャッシュヒット率です。
(SQLやPL/SQLの実行計画を格納する領域)
(ヒット率が低い場合(90%以下),初期化パラメータshared_pool_sizeを大きくする)
SELECT SUM(PINS) TOTAL_PINS, SUM(RELOADS) TOTAL_RELOADS, TO_CHAR((1 - SUM(RELOADS)/SUM(PINS)) * 100, '990.99')|| '%' HIT_RATIO FROM V$LIBRARYCACHE;