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

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

重要:

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

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

1.1 Logdumpの作業の開始

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

1.2 基本的なLogdumpタスクの実行

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

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

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

Logdump 8> SCANFORHEADER

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

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

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

  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で新しいトランザクションの始まりです。

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

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

Logdump 20> SCANFORENDTRANS

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

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

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

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

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

    Logdump 35> POS rba
    Logdump 36> N
    

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

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

    Logdump 37> POS FIRST
    

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

    Logdump 37> POS 0
    

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

特定の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オプションを使用します。

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

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

Logdump 62> FILTER CLEAR

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

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

  • 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などの操作タイプ)でフィルタします。

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

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

Logdump 67> COUNT

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

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

Logdump 68> SAVE file n RECORDS

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

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

Logdump 69> NEXTTRAIL

1.2.11 セッションのログの保持

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

Logdump 70> LOG TO filename.txt

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

Logdump 71> WRITELOG "text"

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

Logdump 72> LOG STOP

1.2.12 現在のLogdump環境の表示

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

Logdump 73> ENV

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

1.2.13 証跡ファイル暗号化の確認および証跡ファイルの復号化

OCI KMSで暗号化されている証跡ファイルの読取りや確認のためには、まずOCI KMS暗号化プロファイルを正しく設定します。暗号化プロファイルの詳細、およびOCI KMS暗号化プロファイルの設定方法については、ExtractでのOCI KMS暗号化プロファイルの適用を参照してください。

次に、証跡ファイルが正しく暗号化されているかどうかを確認し、復号化された証跡ファイルを表示する手順を示します。
  1. 次の環境変数を設定します。
    • 対応するOracle GoldenGateデプロイメントの/varおよび/etcディレクトリを指すOGG_VAR_HOMEおよびOGG_ETC_HOME環境変数。
      export OGG_VAR_HOME=/app/Deployment/var
      export OGG_ETC_HOME=/app/Deployment/etc
    • サービス・マネージャの/sslディレクトリを指すOGG_SSL_HOME環境変数。

      export OGG_SSL_HOME=/app/ServiceManager/etc/ssl
  2. logdumpを起動します。
    shell> ./logdump
  3. 証跡ファイルを開きます。
    open /app/Deployment/var/lib/data/trail_name
    たとえば:
    Logdump 47> open /app/Deployment/var/lib/data/tt000000001
    出力:
    Current log trail file is /u02/Deployment/var/lib/data/tt000000001.
  4. 暗号化プロファイルに対してdecrypton状態に設定します。これにより、証跡ファイル内の復号化されたデータを表示できるようになります。
    decrypt on profile encryption_profile

    たとえば:

    Logdump 48> decrypt on profile OCIKMSTEST
    暗号化プロファイルが正しく設定されている場合は、logdumpで次のようなメッセージが表示されます:
    Using encryption profile: OCIKMSTEST
    
    2023-06-07 23:06:20 INFO OGG-25207 Loading master encryption key from Key Management System 'ocikms'.
    
    2023-06-07 23:06:20 INFO OGG-25851 Using encryption profile 'OCIKMSTEST'.
  5. detail dataおよびnコマンドを使用して、復号化された証跡ファイルを表示します。detail dataコマンドでは、16進およびASCIIデータ値を含むデータが列リストで表示されます。

    Logdump 49>detail data
    Logdump 51>n

    次に、例として証跡ファイルからの抜粋を示します:

    Logdump 52>n
    2023/04/04 18:56:45.205.816 Metadata             Len 382 RBA 4545 
    Table Name: WPDB.U1.TCUSTMER 
    *
     1)Name          2)Data Type        3)External Length  4)Fetch Offset      5)Scale         6)Level
     7)Null          8)Bump if Odd      9)Internal Length 10)Binary Length    11)Table Length 12)Most Sig DT
    13)Least Sig DT 14)High Precision  15)Low Precision   16)Elementary Item  17)Occurs       18)Key Column
    19)Sub DataType 20)Native DataType 21)Character Set   22)Character Length 23)LOB Type     24)Partial Type
    25)Remarks
    *
    TDR version: 11
    Definition for table WPDB.U1.TCUSTMER
    Record Length: 78
    Columns: 4
    CUST_CODE   64      4        0  0  0 0 0      4      4      0 0 0 0 0 1    0 1   0    1       -1      0 0 0  
    NAME        64     30       10  0  0 0 0     30     30      0 0 0 0 0 1    0 0   0    1       -1      0 0 0  
    CITY        64     20       46  0  0 0 0     20     20      0 0 0 0 0 1    0 0   0    1       -1      0 0 0  
    STATE        0      2       72  0  0 0 0      2      2      0 0 0 0 0 1    0 0   0   96       -1      0 0 0  
    End of definition
    
    Logdump 57> n
    Oracle RBA : 0x000091.00018942.0010 
    
    2023/04/04 18:56:42.000.000 Insert               Len    86 RBA 4994 
    Name: WPDB.U1.TCUSTMER  (TDR Index: 1) 
    After  Image:                                             Partition x0c   G  b   
     0000 0800 0000 0400 3030 3030 0100 2200 0000 1e00 | ........0000..".....  
     6e4f 4f43 7678 7947 6f74 456d 766c 7a4d 4543 4262 | nOOCvxyGotEmvlzMECBb  
     6f43 5751 506d 7766 7569 0200 1800 0000 1400 4956 | oCWQPmwfui........IV  
     4f5a 5849 4e44 5542 4b49 4256 4e43 4a48 4f57 0300 | OZXINDUBKIBVNCJHOW..  
     0400 0000 595a                                    | ....YZ  
    Column 0 (0x0000), Length 8 (0x0008).  
     0000 0400 3030 3030                               | ....0000  
    Column 1 (0x0001), Length 34 (0x0022).  
     0000 1e00 6e4f 4f43 7678 7947 6f74 456d 766c 7a4d | ....nOOCvxyGotEmvlzM  
     4543 4262 6f43 5751 506d 7766 7569                | ECBboCWQPmwfui  
    Column 2 (0x0002), Length 24 (0x0018).  
     0000 1400 4956 4f5a 5849 4e44 5542 4b49 4256 4e43 | ....IVOZXINDUBKIBVNC  
     4a48 4f57                                         | JHOW  
    Column 3 (0x0003), Length 4 (0x0004).  
     0000 595a                                         | ..YZ  
    
    Logdump 58>n
    2023/04/04 18:56:45.219.345 Metadata             Len 644 RBA 5304 
    Table Name: WPDB.U1.TCUSTORD 
    *
     1)Name          2)Data Type        3)External Length  4)Fetch Offset      5)Scale         6)Level
     7)Null          8)Bump if Odd      9)Internal Length 10)Binary Length    11)Table Length 12)Most Sig DT
    13)Least Sig DT 14)High Precision  15)Low Precision   16)Elementary Item  17)Occurs       18)Key Column
    19)Sub DataType 20)Native DataType 21)Character Set   22)Character Length 23)LOB Type     24)Partial Type
    25)Remarks
    *
    TDR version: 11
    Definition for table WPDB.U1.TCUSTORD
    Record Length: 182
    Columns: 7
    CUST_CODE        64      4        0  0  0 0 0      4      4      0 0 0 0 0 1    0 1   0    1       -1      0 0 0  
    ORDER_DATE      192     19       10  0  0 0 0     19     19     19 0 5 0 0 1    0 1   0   12       -1      0 0 0  
    PRODUCT_CODE     64      8       32  0  0 0 0      8      8      0 0 0 0 0 1    0 1   0    1       -1      0 0 0  
    ORDER_ID         64     50       46  0  0 0 0     50     50     50 0 0 0 0 1    0 1   2    2       -1      0 0 0  
    PRODUCT_PRICE   134     10      102  2  0 0 0      8      8      8 0 0 0 0 1    0 0   3    2       -1      0 0 0  
    PRODUCT_AMOUNT  134      8      114  0  0 0 0      8      8      8 0 0 0 0 1    0 0   3    2       -1      0 0 0  
    TRANSACTION_ID   64     50      126  0  0 0 0     50     50     50 0 0 0 0 1    0 0   2    2       -1      0 0 0  
    End of definition

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

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

Logdump 74> HELP

1.2.15 Logdumpの終了

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

  • Logdump 100> EXIT

  • Logdump 100> QUIT

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

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に移動し、トランザクションが生成された表の名前を確認します。これらの表を個別の処理グループにグループ化し、標準サイズのトランザクションを生成する他の表の処理が影響を受けないようにできます。

1.4 コマンド履歴の保持

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

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

  • USERPROFILE環境変数。

  • $HOME環境変数。

  • デフォルト$vol.subvol

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

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

Logdumpコマンドについてさらに学習するには、Logdumpコマンドのアルファベット順のリファレンスを参照してください。