[Oracle Database] システム統計を削除する方法

DELETE_SYSTEM_STATSプロシージャの仕様

このプロシージャは、stattabが指定されていない場合、ワークロード統計(‘INTERVAL’または’START’および’STOP’オプションを使用して収集)を削除し、デフォルトをnoworkload統計(‘NOWORKLOAD’オプションを使用して収集)にリセットします。

他のDELETE_XXX_STATSと違って、システム統計の場合はnoworkload統計にリセット(再収集)するという動作になる。

Oracle® Database PL/SQLパッケージおよびタイプ・リファレンス 12c リリース1 (12.1) DELETE_SYSTEM_STATS

 

検証してみた

 

dbms_stats.delete_system_statsプロシージャを実行しても、統計は削除されるわけではなくNOWORKLOADで再取得される。

 

削除する方法?

一度取得したシステム統計を削除するには、どうしたらよいか?

(取得していない状態には出来ないけど)手動で取得する際に、取得前の状態に戻す方法としては以下が利用できそう。

  1. SET_SYSTEM_STATSを利用する。
  2. EXPORT_SYSTEM_STATSで取得前にバックアップをとっておき、IMPORT_SYSTEM_STATSで戻す。

 

SET_SYSTEM_STATSで試してみた。

 

取得前の状態を確認しておけば、元に戻すことは出来る。

スポンサードリンク

Be the first to comment

Leave a Reply

Your email address will not be published.


*