[OracleDB] AWRスナップショットの手動取得と削除方法

AWR(Automatic Workload Repository)スナップショットの手動取得と削除方法を紹介します。

AWRとはOracle Databaseの稼働統計とワークロード情報のスナップショットを自動的に収集・管理する機能です。

きちんと設定しておけば定期的にスナップショットの取得と削除を行うことはできますので、

本手順は

  • 性能試験時にスナップショットを手動取得
  • 容量過多でAWR領域を減らす

する場合に使用してください。

通常運用では自動で取得とパージの設定を行いましょう。

以下、自動取得と削除の設定についての記事になります。

あわせて読みたい
[OracleDB] AWRの設定方法。取得間隔・保存期間や取得レベルは何を設定すべきか? AWR(Automatic Workload Repository)の各種設定方法を紹介します。 AWRとはOracle Databaseの稼働統計とワークロード情報のスナップショットを自動的に収集・管理する...

なおAWR利用には「Diagnostic Pack」のライセンスが追加で必要になります。

目次

AWRスナップショットの取得

AWRスナップショットの手動取得方法は、SQL*PlusにSYSユーザでログインし以下のSQLを実行します。

EXECUTE DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT(); 

以下のSQLで取得出来たことを確認できます。

select
DBID,
END_INTERVAL_TIME,
SNAP_FLAG
from
DBA_HIST_SNAPSHOT
order by
END_INTERVAL_TIME;

以下、出力例です。

DBID       END_INTERVAL_TIME        SNAP_ID  SNAP_FLAG
---------- ---------------------------- ---------- -------------
1469414445 18-07-14 13:30:06.832         323                   0
1469414445 18-07-14 16:28:48.761         324                   1

AWRスナップショットの削除

AWRスナップショットの手動取得方法は、

SQL*PlusにSYSユーザでログインし以下のSQLを実行します。

begin
DBMS_WORKLOAD_REPOSITORY.DROP_SNAPSHOT_RANGE(
low_snap_id => <削除対象のスナップショット開始番号>,
high_snap_id => <削除対象のスナップショット終了番号>,
dbid => <DBID>);
end;
/

カンマなどで囲わず、数値型で指定してください。

下が実行例になります。

begin
DBMS_WORKLOAD_REPOSITORY.DROP_SNAPSHOT_RANGE(
low_snap_id => 221,
high_snap_id => 324,
dbid => 1469414445);
end;
/

Oracleの基本 ~データベース入門から設計/運用の初歩までposted with ヨメレバ

渡部 亮太,相川 潔,日比野 峻佑,岡野 平八郎,宮川 大地 技術評論社 2017-09-22

Amazonで探す

Kindleで探す

楽天ブックスで探す

楽天koboで探す

7netで探す

hontoで探す

e-honで探す

紀伊國屋書店で探す

  • システム開発、アプリ開発
  • マッチングアプリ開発
  • インフラ構築支援等、なんでもご相談ください。
よかったらシェアしてね!
  • URLをコピーしました!
目次