リプレイ・ディレクトリ・オブジェクト内のワークロード取得に関する情報と、そのディレクトリからのワークロード・リプレイ試行の履歴に関する情報をすべて取得できます。デフォルトでは、ワークロード・リプレイ相違データはロードされませんが、このデータを選択的にロードする選択ができます。
ワークロード・リプレイに関する情報を取得するには、次の手順を実行します。
DBMS_WORKLOAD_REPLAY
.GET_REPLAY_INFO
ファンクションをコールします。
GET_REPLAY_INFO
ファンクションはまず、ワークロードの取得に関する情報が含まれる行をDBA_WORKLOAD_CAPTURES
ビューにインポートします。デフォルトでは、これまでDBA_WORKLOAD_REPLAYS
ビューにロードされていないリプレイの情報のみがインポートされます。このファンクションは、DBA_WORKLOAD_REPLAYS
ビューのCAPTURE_ID
列に関連付けられて、取得した情報にアクセスできる、キャプチャ・ディレクトリのcap_id
を戻します(統合キャプチャ・ディレクトリの場合、cap_id
は0
を戻します)。
GET_REPLAY_INFO
ファンクションでは、次のパラメータを使用します。
replay_dir
: ワークロード・リプレイのディレクトリ・オブジェクト名を指定する必須パラメータ。
load_divergence
: 相違データがロードされるかどうかを指定するオプション・パラメータ。このパラメータのデフォルト値はFALSE
です。リプレイ・ディレクトリから取得した各リプレイ試行の行をDBA_WORKLOAD_REPLAY_DIVERGENCE
ビューにインポートして、相違データをロードするには、このパラメータをTRUE
に設定します。あるいは、リプレイ情報が取得された後で、「ワークロード・リプレイの相違データのロード」で説明されているように、LOAD_DIVERGENCE
プロシージャを使用して、ディレクトリ・オブジェクト内の1つのリプレイまたはすべてのリプレイの相違データを選択的にロードすることができます。
例12-1 ワークロード・リプレイに関する情報の取得
次の例に、ワークロード取得に関する情報と、jul14
という名前のリプレイ・ディレクトリ・オブジェクトのワークロード・リプレイ試行の履歴に関する情報を取得する方法と、情報が取得されたことを確認する方法を示します。
DECLARE cap_id NUMBER; BEGIN cap_id := DBMS_WORKLOAD_REPLAY.GET_REPLAY_INFO(replay_dir => 'jul14'); SELECT capture_id FROM dba_workload_replays WHERE capture_id = cap_id; END; /