Autonomous Databaseインスタンス間の取得およびリプレイ
Autonomous Databaseインスタンスから別のAutonomous Databaseインスタンスに取得およびリプレイできます。
Autonomous Database間の取得- リプレイは、次のステップで構成されます(両方ではなく、ワークロード取得を取り消すか、または終了します)。
(オプション)取得およびリプレイの詳細について通知する情報イベントのサブスクライブ
取得およびリプレイの開始および完了時に通知されるcom.oraclecloud.databaseservice.autonomous.database.information情報イベントをサブスクライブします。
ノート:
このステップは省略可能です。 ワークロード取得のステータスおよび履歴情報は、DBA_CAPTURE_REPLAY_STATUSビューおよびDBA_CAPTURE_REPLAY_HISTORYビューでも確認できます。
詳細については、「DBA_CAPTURE_REPLAY_STATUSビュー」と「DBA_CAPTURE_REPLAY_HISTORYビュー」を参照してください。
情報イベントは、取得およびリプレイの開始時間および終了時間に関する通知を提供し、取得およびリプレイ・レポートにアクセスするためのPAR URLを含みます。
Autonomous Database情報イベントには次のものが含まれます:
WorkloadCaptureBegin: このイベントは、ワークロードの取得が開始されたときにトリガーされます。WorkloadCaptureEnd: このイベントは、ワークロードの取得が正常に完了し、取得ファイルをダウンロードするための事前認証済(PAR) URLを生成したときにトリガーされます。WorkloadReplayBegin: このイベントは、ワークロードのリプレイが開始されたときにトリガーされます。WorkloadReplayEnd: このイベントは、ワークロード・リプレイが正常に完了し、リプレイ・レポートをダウンロードするための事前認証済(PAR) URLを生成したときにトリガーされます。
詳細については、「Autonomous Databaseの情報イベント」を参照してください。
Autonomous Databaseインスタンスのワークロードの取得
データベース・リプレイを使用する最初のステップは、本番ワークロードを取得することです。
ノート:
Autonomous Databaseインスタンスでワークロードを取得し、別のAutonomous Databaseインスタンスでリプレイできます。 取得したワークロードは、フル・クローンまたはリフレッシュ可能クローンでリプレイできます。 取得ターゲットおよびリプレイ・ターゲットは、一貫性のある論理状態である必要があります。 そのため、ワークロードを取得するAutonomous Databaseインスタンスのリフレッシュ可能クローンまたはフル・クローンをプロビジョニングする必要があります。詳細については、「Autonomous Databaseインスタンスのクローニング、移動またはアップグレード」を参照してください。
本番システムでワークロードの取得を開始すると、Oracle Databaseに送信される外部クライアントからのすべてのリクエストが追跡され、取得ファイルと呼ばれるバイナリ・ファイルに格納されます。
ワークロードの取得では、取得ファイルを含む2つのサブディレクトリcapおよびcapfilesが作成されます。 取得ファイルは、トランザクションの詳細、バインド値、SQLテキストなど、クライアント・リクエストに関するすべての関連情報を提供します。 これらの取得ファイルは、プラットフォームに依存しないため、別のシステムに転送できます。
DBMS_CLOUD_ADMIN.START_WORKLOAD_CAPTUREを実行して、Autonomous Databaseインスタンスでワークロードの取得を開始します。
詳細については、「Autonomous Databaseインスタンスのクローニング、移動またはアップグレード」を参照してください。
Autonomous Databaseインスタンスでワークロードの取得を開始するには、ADMINユーザーとしてログインするか、DBMS_CLOUD_ADMINに対するEXECUTE権限を持っている必要があります。
ワークロードの取得を開始する例:
BEGIN
DBMS_CLOUD_ADMIN.START_WORKLOAD_CAPTURE(
capture_name => 'test',
duration => 60);
END;
/これにより、Autonomous Databaseインスタンスでワークロードの取得が開始されます。
パラメータは次のとおりです:
-
capture_name: ワークロード取得の名前です。 -
duration: ワークロードを取得する必要がある期間(分)です。 このパラメータはオプションです。
詳細については、「START_WORKLOAD_CAPTUREプロシージャ」を参照してください。
ワークロードの取得イベント
START_WORKLOAD_CAPTUREの開始時に通知されるように、情報イベントcom.oraclecloud.databaseservice.autonomous.database.informationをサブスクライブできます。 詳細については、「(オプション)取得およびリプレイの詳細について通知する情報イベントのサブスクライブ」を参照してください。
ワークロードの取得およびリプレイ・ビュー
ワークロードの取得およびリプレイに関する情報は、DBA_CAPTURE_REPLAY_STATUSおよびDBA_CAPTURE_REPLAY_HISTORYビューで確認できます。 詳細については、「DBA_CAPTURE_REPLAY_STATUSビュー」と「DBA_CAPTURE_REPLAY_HISTORYビュー」を参照してください。
Autonomous Databaseインスタンスでのワークロード取得の取消し
DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTUREを実行して、Autonomous Databaseインスタンスの現在のワークロード取得を取り消します。
ワークロードの取得を取り消すには、ADMINユーザーとしてログインするか、DBMS_CLOUD_ADMINに対するEXECUTE権限を持っている必要があります。
例:
BEGIN
DBMS_CLOUD_ADMIN.CANCEL_WORKLOAD_CAPTURE;
END;
/これにより、現在のワークロード取得が取り消され、リフレッシュ可能クローンでリフレッシュが実行されます。
DBA_CAPTURE_REPLAY_STATUSビューを問い合せて、ワークロードの取消しステータスを確認できます。
詳細については、「DBA_CAPTURE_REPLAY_STATUSビュー」を参照してください。
詳細については、「CANCEL_WORKLOAD_CAPTUREプロシージャ」を参照してください。
Autonomous Databaseインスタンスでのワークロード取得の終了
DBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTUREを実行して、Autonomous Databaseインスタンスでワークロードの取得を完了します。
Autonomous Databaseインスタンスでワークロードの取得を終了する例:
BEGIN
DBMS_CLOUD_ADMIN.FINISH_WORKLOAD_CAPTURE;
END;
/
このプロシージャを実行するには、ADMINユーザーとしてログインするか、DBMS_CLOUD_ADMINに対するEXECUTE権限を持っている必要があります。 このプロシージャを実行すると、ワークロード取得ファイルがzipファイルとしてオブジェクト・ストアにアップロードされます。
詳細については、「FINISH_WORKLOAD_CAPTUREプロシージャ」を参照してください。
ワークロードの取得イベント
情報イベントcom.oraclecloud.databaseservice.autonomous.database.informationをサブスクライブすると、次のようなワークロードの取得について通知を受け取ることができます:
-
FINISH_WORKLOAD_CAPTUREの完了。 -
オブジェクト・ストアの取得およびレポートにアクセスするためのPAR URLを含む
captureDownloadURLフィールド。 取得およびレポートは、PAR URLの生成日から7日間有効です。
詳細については、「(オプション)取得およびリプレイの詳細について通知する情報イベントのサブスクライブ」を参照してください。
ワークロードの取得およびリプレイ・ビュー
DBA_CAPTURE_REPLAY_STATUSビューを問い合せて、完了したワークロード取得のステータスを確認できます。 詳細については、「DBA_CAPTURE_REPLAY_STATUSビュー」を参照してください。
ワークロードの取得およびリプレイに関する情報は、DBA_CAPTURE_REPLAY_HISTORYビューにあります。 詳細については、「DBA_CAPTURE_REPLAY_HISTORYビュー」を参照してください。
DBA_WORKLOAD_CAPTURESビューのID, NAME, START_TIME列およびEND_TIME列を問い合せて、ワークロード取得の詳細を取得できます。 詳細については、DBA_WORKLOAD_CAPTURESを参照してください。
ワークロード・リプレイ用のリフレッシュ可能クローンの準備
ワークロード・リプレイ用にリフレッシュ可能クローンを準備するステップを示します。
ノート:
このステップは、フル・クローンでワークロードをリプレイする場合には適用されません。ワークロードの取得をリプレイするためにリフレッシュ可能クローンを準備するには、2つのオプションがあります。 DBMS_CLOUD_ADMIN.PREPARE_REPLAYを実行して、ワークロード・リプレイ用にリフレッシュ可能クローンを自動的に準備できます。 このプロシージャは、リフレッシュ可能クローンを取得の開始時間にリフレッシュし、リフレッシュ可能クローンを切断します。 また、ワークロード取得をリプレイするためにリフレッシュ可能クローンを手動で準備することもできます。
ワークロード・リプレイ用のリフレッシュ可能クローンの自動準備
ワークロード・リプレイ用にリフレッシュ可能クローンを自動的に準備する例:
BEGIN
DBMS_CLOUD_ADMIN.PREPARE_REPLAY (
capture_name 'test'
END;
/
このプロシージャを実行するには、ADMINユーザーとしてログインするか、DBMS_CLOUD_ADMINに対するEXECUTE権限を持っている必要があります。
DBMS_CLOUD_ADMIN.PREPARE_REPLAYは次のことを行います:
-
リフレッシュ可能クローンを取得開始タイムスタンプにリフレッシュします。
-
リフレッシュ可能クローンを切断します。
オプションで、取得をリプレイする前のこの時点で、リフレッシュ可能クローンを変更できます。 たとえば、パラメータ値を変更し、特定の機能をオン/オフにしてリプレイへの影響を確認します。
ワークロード・リプレイ用のリフレッシュ可能クローンの手動準備
DBMS_CLOUD_ADMIN.PREPARE_REPLAYを実行してリフレッシュ可能クローンを自動的に準備する場合、これらの手動リフレッシュ可能クローンのステップは必要ありません。
ワークロード・リプレイを手動で準備するには、次のステップを実行します:
-
DBA_WORKLOAD_CAPTURESビューを問い合せて、取得開始タイムスタンプを検索します。 詳細については、DBA_WORKLOAD_CAPTURESを参照してください。 -
リフレッシュ可能クローンを取得開始タイムスタンプにリフレッシュします。 詳細については、「Autonomous Databaseでのリフレッシュ可能なクローンのリフレッシュ」を参照してください。
-
リフレッシュ可能クローンを手動で切断します。 詳細については、「ソース・データベースからのリフレッシュ可能なクローンの切断」を参照してください。
-
オプションで、取得をリプレイする前に、リフレッシュ可能クローンに変更を加えることができます。 たとえば、パラメータ値を変更し、特定の機能をオン/オフにしてリプレイへの影響を確認します。
Autonomous Databaseインスタンスでのワークロードのリプレイ
ワークロードの取得が完了したら、テスト・システムでリプレイできます。 Oracleは、ワークロードの取得中に記録されたアクションを、本番システムの同じタイミング、同時実行性およびトランザクションの依存関係でリプレイします。
プロシージャDBMS_CLOUD_ADMIN.REPLAY_WORKLOADを実行して、データベースでワークロード・リプレイを開始します。 DBMS_CLOUD_ADMIN.REPLAY_WORKLOADを実行するには、ADMINユーザーとしてログインするか、DBMS_CLOUD_ADMINに対するEXECUTE権限を持っている必要があります。
取得したワークロードは、リフレッシュ可能クローンまたはワークロードの取得元のAutonomous Databaseインスタンスのフル・クローンでリプレイできます。 取得ターゲットおよびリプレイ・ターゲットは、一貫性のある論理状態である必要があります。
リフレッシュ可能クローンでのワークロードのリプレイ
次の例では、オブジェクト・ストレージから取得ファイルをダウンロードし、取得したワークロードをリプレイして、リプレイ・レポートをオブジェクト・ストレージにアップロードします。
BEGIN
DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD(
capture_name => 'CAP_TEST1');
END;
/CAPTURE_NAMEパラメータは、ワークロード取得の名前を指定します。 このパラメータは必須です。
フル・クローンでのワークロードのリプレイ
次の例では、オブジェクト・ストレージから取得ファイルをダウンロードし、取得したワークロードをクローンでリプレイし、リプレイ・レポートをオブジェクト・ストレージにアップロードします。
BEGIN
DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD(
capture_name => 'CAP_TEST1',
capture_source_tenancy_ocid => 'OCID1.TENANCY.REGION1..ID1',
capture_source_db_name => 'ADWFINANCE');
END;
/ノート:
同じ取得名を持つ取得が複数ある場合、REPLAY_WORKLOADプロシージャは最新の取得を使用します。 Oracleでは、各取得に一意の取得名を使用して、どの取得をリプレイするかが混乱しないようにすることをお薦めします。
CAPTURE_NAMEパラメータは、ワークロード取得の名前を指定します。 このパラメータは必須です。
CAPTURE_SOURCE_TENANCY_OCIDパラメータは、ワークロード取得のソース・テナンシOCIDを指定します。 フル・クローンでワークロード取得を実行する場合、このパラメータは必須です。
CAPTURE_SOURCE_DB_NAMEパラメータは、ワークロード取得のソース・データベース名を指定します。 フル・クローンでワークロード取得を実行する場合、このパラメータは必須です。
詳細については、「REPLAY_WORKLOADプロシージャ」を参照してください。
ワークロード・リプレイ・イベント
情報イベントcom.oraclecloud.databaseservice.autonomous.database.informationをサブスクライブして、次のことを通知
-
REPLAY_WORKLOADの開始と完了。 -
リプレイ・レポートをダウンロードするための「オブジェクト・ストア」リンク。 イベントでは、
replayDownloadURLフィールドのレポートにアクセスするためのPAR URLが提供されます。 レポートは、PAR URLが生成された日から7日間有効です。
詳細については、「Autonomous Databaseの情報イベント」を参照してください。
ワークロードの取得およびリプレイ・ビュー
DBA_CAPTURE_REPLAY_STATUSビューを問い合せて、ワークロードのリプレイ・ステータスを確認できます。
詳細については、「DBA_CAPTURE_REPLAY_STATUSビュー」を参照してください。
ワークロードの取得およびリプレイに関する情報は、DBA_CAPTURE_REPLAY_HISTORYビューにあります。 詳細については、「DBA_CAPTURE_REPLAY_HISTORYビュー」を参照してください。