1 Logdumpユーティリティの使用

Logdumpユーティリティの使用方法について説明します。このユーティリティを使用すると、ファイルのオープン、表示の制御、ファイル内のナビゲート、証跡または抽出ファイルに格納されたデータの検索、フィルタリング、表示、保存を行うことができます。

重要:

証跡内のデータまたはチェックポイントに有害な影響を及ぼさないようにするには、Oracleサポート・アナリストまたはOracle GoldenGateを熟知したユーザーの手引きの元でのみLogdumpを使用します。

この章の内容は次のとおりです。

Logdumpの作業の開始

この項では、基本的なタスクの中でも特にファイルのオープン、表示の制御、ファイル内の移動および特定の情報のフィルタを行う基本的なLogdumpコマンドを紹介します。レコードのコンポーネントについても説明します。

基本的なLogdumpタスクの実行

Logdumpで行える基本的なタスクをいくつか次に示します。コマンドと使用可能な他のオプションの詳細は、Logdumpコマンドのアルファベット順のリファレンスを参照してください。

次の優良なレコード・ヘッダーの検索

次の優良なレコード・ヘッダーを検索するには、次のコマンドを入力します。

Logdump 8> SCANFORHEADER

あるいは、単に「SFH」と入力します。

トランザクションの始まり、中間および終わりの検索

トランザクションの始まり、中間および終わりを検索するには、次の手順を実行します。

  1. ヘッダーと詳細を表示します。
    Logdump 9> GHDR ON
    Logdump 10> DETAIL ON
    
  2. 次のレコードに移動します。
    Logdump 11> N
    
  3. レコード・ヘッダーのTransIndフィールドを表示します。次の表で、レコードの位置についてトランザクションとの関係で説明します。
    トランザクション・インジケータ 説明
    TransInd   : .  (x00)

    トランザクションの最初の文

    TransInd   : .  (x01)

    トランザクションの中間の文

    TransInd   : .  (x02)

    トランザクションの最後の文

    TransInd   : .  (x03)

    トランザクションの唯一の文

  4. N」を押して次のレコードに移動し、TransIndフィールドを参照して各レコードがトランザクション内のどこにあるかを確認します。TransIndx02またはx03の場合、次のレコードのTransIndx00で新しいトランザクションの始まりです。

トランザクションの終わりのスキャン

トランザクションの終わりをスキャンして検索するには、次のコマンドを入力します。

Logdump 20> SCANFORENDTRANS

あるいは、単に「SFET」と入力します。

表示されるレコードは、次のトランザクションの最初のレコードです。TransIndフィールドがx00であることで確認できます。

ファイル内の特定のRBAへの移動

ファイル内の特定のRBAに移動するには、次のいずれかを行います。

  • ファイル内の任意のRBAに移動するには、次のようにします。

    Logdump 35> POS rba
    Logdump 36> N
    

    これによって、そのRBAにあるレコードが表示されます。

  • ファイル内の最初のレコードに移動するには、次のようにします。

    Logdump 37> POS FIRST
    

    あるいは、次のコマンドを入力します。

    Logdump 37> POS 0
    

表名またはデータ・ファイル名に基づいたフィルタ

特定のNonStopデータ・ファイル名を含むレコード以外を除外するには、次のコマンドを入力します。

Logdump 60> FILTER INCLUDE FILENAME $volume.subvolume.file

特定の表名を含むレコード以外を除外するには、次のようにします。

  • NonStopシステムの場合:

    Logdump 60> FILTER INCLUDE ANSINAME catalog.schema.table
    
  • WindowsまたはUNIXシステムの場合:

    Logdump 60> FILTER INCLUDE FILENAME [container | catalog] schema.table
    

ここでNコマンドを使用すると、このフィルタに合うレコードのみが表示されます。反対に、特定の表名またはファイル名を含むレコードを除外し、それ以外を表示するには、INCLUDEオプションのかわりにEXCLUDEオプションを使用します。

現在のフィルタ基準の削除

現在のフィルタ基準を削除するには、次のコマンドを入力します。

Logdump 62> FILTER CLEAR

複数の条件によるフィルタ

複数の条件でフィルタするには、次のいずれかのコマンドを入力します。

  • Logdump 60> FILTER INCLUDE FILENAME $volume.subvolume...file..; FILTER RECTYPE record_type; FILTER MATCH ALL

  • Logdump 60> FILTER INCLUDE ANSINAME catalog.schema.table; FILTER RECTYPE record_type; FILTER MATCH ALL

  • Logdump 65> FILTER INCLUDE FILENAME schema.table; FILTER RECTYPE record_type; FILTER MATCH ALL

複数の条件を指定する場合、フィルタ条件のいずれかに一致するよう検索するか、すべてに一致するよう検索するかに応じて、それぞれMATCH ANYまたはMATCH ALLを使用します。前述の例では、名前およびレコード・タイプ(通常INSERTなどの操作タイプ)でフィルタします。

証跡ファイル内のレコードのカウント

次のコマンドでは、カウント・サマリーが表示され、続いて表またはデータ・ファイルごとのカウントが表示されます。

Logdump 67> COUNT

新しい証跡ファイルへのレコードの保存

レコードのサブセットを保存するには、次のコマンドを入力します。

Logdump 68> SAVE file n RECORDS

証跡の現在のファイルを閉じ、次のファイルを開く

証跡の現在のファイルを閉じ、次のファイルを開くには、次のコマンドを入力します。

Logdump 69> NEXTTRAIL

セッションのログの保持

ロギングを開始するには、次のコマンドを入力します。

Logdump 70> LOG TO filename.txt

テキストをログに書き込むには、次のようにします。

Logdump 71> WRITELOG "text"

ロギングを停止するには、次のようにします。

Logdump 72> LOG STOP

現在のLogdump環境の表示

現在のLogdump環境を表示するには、次のコマンドを入力します。

Logdump 73> ENV

これによって、有効な機能(フィルタ、ヘッダーの表示など)が表示され、現在の証跡と位置などの環境情報が表示されます。

オンライン・コマンド・ヘルプの表示

オンライン・コマンド・ヘルプを表示するには、次のコマンドを入力します。

Logdump 74> HELP

Logdumpの終了

Logdumpを終了するには、次のいずれかのコマンドを入力します。

  • Logdump 100> EXIT

  • Logdump 100> QUIT

トランザクション・サイズの評価

LogdumpのTRANSHISTコマンドを他のLogdumpコマンドと組み合せて使用して、アプリケーションで大規模なトランザクションが生成されるかどうかを調べ、その相対サイズを確認します。TRANSHISTを使用すると、Logdumpによって内部履歴表で証跡ファイルまたは抽出ファイルに含まれているトランザクションのサイズが追跡されます。トランザクションは、サイズ(バイト数)の降順に並べられます。履歴表がいっぱいになると、最も小さいトランザクションが削除され、それより大きいトランザクションがリストに追加されます。

TRANSHISTによって生成される統計を使用するには、Logdumpで次の一連のコマンドを発行します。

  1. TRANSHISTを使用して、トランザクションのサイズを追跡する履歴表のサイズを設定します。最大サイズは200バイトです。値0は、追跡を無効にします。
    TRANSHIST n
    
  2. TRANSRECLIMITまたはTRANSBYTELIMITコマンドを使用して、標準サイズのトランザクションと見なす下限を設定します。これらのコマンドによって、標準サイズのトランザクションは追跡されなくなります。標準サイズのトランザクションを除外すると、確認の必要のあるデータの量が少なくなります。
    {TRANSBYTELIMIT n bytes | TRANSRECLIMIT n records}
    
  3. LogdumpのCOUNTコマンドを使用して、トランザクション・サイズの統計を表示します。これは出力の最後に表示され、次のような内容です。
    Transactions with at least 100 records or 100000 bytes
    2011/02/01 09:31:24.000.000    00:00:00.000, Seq 0, RBA 13101
       Bytes/Trans .....    1168167
       Records/Trans ...       1001
       Files/Trans .....          1
    2011/02/01 09:31:35.000.000    00:00:11.000, Seq 0, RBA 1205292
       Bytes/Trans .....    1168167
       Records/Trans ...       1001
       Files/Trans .....          1
    

    Logdumpでファイルをスキャンし、情報をレポートします。

  4. LogdumpのPOSITION RBAコマンドを使用して、COUNTの出力にリストされた各RBAに移動し、トランザクションが生成された表の名前を確認します。これらの表を個別の処理グループにグループ化し、標準サイズのトランザクションを生成する他の表の処理が影響を受けないようにできます。

コマンド履歴の保持

WindowsおよびUNIXシステムでは、コマンド履歴はlogdump.hstという名前のファイルに格納されます。NonStopシステムでは、コマンド履歴はlogduhstという名前のファイルに格納されます。ファイルは、Logdumpを最初に起動したユーザーのホームに作成されます。

Logdumpの起動時、プラットフォームに応じて次のいずれかの場所で履歴ファイルが検索されます。

  • USERPROFILE環境変数。

  • $HOME環境変数。

  • デフォルト$vol.subvol

ファイルが存在する場合、Logdumpはコマンド履歴をバッファにロードします。コマンド履歴のバッファには、400コマンドが保持されます。Logdumpセッションの終了時、セッションの履歴がファイルに追加されます。

Logdumpコマンドの情報と構文の表示

Logdumpコマンドの詳細は、Logdumpコマンドのアルファベット順のリファレンスを参照してください。