目次:
- Oracleには、リプレイ・ファイルを書き込むためのディレクトリが必要です。
- この例では、再生が別のデータベースで行われていることを前提としています。同じデータベース上にある場合は、ディレクトリを作成してキャプチャファイルを移動する必要はありません。これらのファイルはすでに正しい場所に置かれているためです。
ビデオ: Technology Stacks - Computer Science for Business Leaders 2016 2024
Oracle 12c Database Replay機能は、現実的なアプリケーション・テストを実行できるようにするためのソリューションとして進化しました。データベースリプレイの前に、パフォーマンスやワークロードに対するあらゆる種類の変更をテストする場合は、サードパーティのツールを購入するか、ワークロードを偽造するために大量のコーディングを行う必要がありました。
ほとんどの場合、いずれの方法もあなたの実際の作業負荷を本当に代表していませんでした。また、テストせずに本番環境に変更を加えることは危険です。
<! - 1 - >データベースリプレイは、すべての拠点を網羅するために、あなたの倉庫にあるもう1つのツールです。
本質的に、Database Replayでは、作業負荷をリアルタイムで記録してから再生することができます。
-
別のデータベース
-
異なるバージョンのOracle
-
異なるOS
データベース・リプレイは、SQLレベル以下の作業負荷を取得します。作業負荷はバイナリファイルに格納されます。これらのファイルをテスト環境に転送し、ワークロードを実行し、問題を分析し、問題を修正し、再度テストすることができます。同じ作業負荷が繰り返されます。 Flashback Databaseのようなツールと連動して、変更を繰り返し連続してテストできます。環境が変わったときに何かが壊れる可能性を減らすのに役立ちます。
<!テストの変更
-
構成の変更
-
アップグレード
-
ダウングレード
-
アプリケーションの変更
-
デバッグ
-
データベースリプレイは、次のような状況に役立つメカニズムを提供します。 >ストレージ、ネットワーク、インターコネクトの変更
-
プラットフォームの変更
-
OSの変更
-
Real Application Clusters(RAC)への変換
-
<!データベースリプレイを使用する方法は次のとおりです。
SQL * PlusにSYSDBA権限を持つユーザーとしてログインします。
Oracleには、リプレイ・ファイルを書き込むためのディレクトリが必要です。
たくさんのスペースを持つOS上の場所にディレクトリを作成します。
-
これが表示されます:
ディレクトリが作成されました。
-
キャプチャの開始:
この例では、CAPTURE_DEMOという名前が使用されています。
理想的には、キャプチャが開始される前にデータベースを再起動し、途中でトランザクションを捕まえるのを避けることができます。もちろん、そうすることは、実動システムを扱う際の選択肢とは限りません。
-
これが表示されます。
PL / SQLプロシージャが正常に完了しました。
ワークロードを実行します。
通常のアプリケーションの動作であれば、必要な時間だけ動作させます。
ワークロードが完了したか、ターゲット時間が経過したら、取得プロセスを停止します。
-
これが表示されます。
PL / SQLプロシージャが正常に完了しました。
-
Oracleのドキュメントによると、ワークロードの取得では最大4つまで追加できます。システムへの処理オーバーヘッドの5%、各セッションの64Kのメモリオーバーヘッドさらに、キャプチャディレクトリに領域がなくなると、キャプチャは停止します。その時点までのすべてのキャプチャされたデータはまだ有効です。
あなたのキャプチャを使用して作業負荷を「再生」することが考えられます。私たちの経験では、ワークロードは、通常、テスト環境などの別のデータベースに対して再生されます。ただし、必ずしもそうではありません。
データベース環境が、メンテナンス期間が長い(週末など)場所がある場合は、次の作業を行うことができます。
フラッシュバックデータベースの有効化
金曜日の朝の復元ポイントの作成
8時間から4時間のワークロード取得を開始する。 m。金曜日の夕方に従業員が帰宅した後にシステムを制限し、別の復元ポイントを作成する
-
金曜日の朝に復元ポイントにデータベースを復元する
-
データベースまたはアプリケーションの変更を展開する
-
変更ワークロードを金曜日の夜に戻す
-
労働者が月曜日の朝に戻ったときにデータベースまたはアプリケーションの変更を有効にする
-
Oracle 12cでワークロードを再生する方法
-
ワークロードを再生するには、 :
-
再生キャプチャファイル用のディレクトリを作成します。
-
これが表示されます。
-
ディレクトリが作成されました。
この例では、再生が別のデータベースで行われていることを前提としています。同じデータベース上にある場合は、ディレクトリを作成してキャプチャファイルを移動する必要はありません。これらのファイルはすでに正しい場所に置かれているためです。
ファイルをソースシステム上のキャプチャディレクトリから再生システム上のディレクトリに移動します。
-
データベースの再生プロセスを開始します。
これが表示されます。
PL / SQLプロシージャが正常に完了しました。
REPLAY_DEMOという再生セッションを初期化します。
-
これが表示されます。
-
PL / SQLプロシージャが正常に完了しました。
リプレイ・ファイルを準備するようOracleに指示します。
これが表示されます。
-
PL / SQLプロシージャが正常に完了しました。
再生クライアントを開始します。
は、ワークロードを実行および管理するプロセスです。これらのプロセスは、OSのコマンドラインから起動されます。
-
次の例では、oracleをパスワードとして使用してリプレイ・クライアントを開始します。
Workload Replay Client:リリース12. 1. 0 1. 0 - Fri Aug 16:22:24: 44 2013 Copyright(c)1982、2013、Oracleおよび/またはその関連会社。全著作権所有。再生が始まるのを待ちます(22:24:44)。
再生を開始するようにデータベースに指示します。
これが表示されます。 PL / SQLプロシージャが正常に完了しました。 リプレイの実行中にステータスを確認します。
-
基本的に、DBA_WORKLOAD_REPLAYSテーブルをクエリしています。これ(またはそのようなもの)が表示されます:
ID NAME STATUS DURATION_SECS ---------- -------------------- --- -------- ------------- 10進行中のREPLAY_DEMO 369
すべてが完了したら、再生メタデータをクリーンアップする必要があります。
-
ソースシステムのID情報を取得:
IDの名前---------- -------------- --------------------- 4 CAPTURE_DEMO
キャプチャ情報を削除します。
-
これが表示されます。
PL / SQLプロシージャが正常に完了しました。
再生システムで再生IDを探します:
次のようなものが表示されます:
-
ID NAME ---------- ------------- ---------------------- 10 REPLAY_DEMO
リプレイ情報を削除する: