変更の取得の有効化

CREATE TABLEおよびALTER TABLEコマンドのDATA CAPTURE CHANGES機能で提供される拡張形式でデータの変更が記録されるよう、DB2を構成します。この形式により、Oracle GoldenGateでは、UPDATE文によって変更された行の変更前イメージと変更後イメージの全体を使用できます。GGSCIを使用して、次のようにALTER TABLEコマンドを発行できます。

GGSCIからの変更の取得を有効にする手順:

  1. Oracle GoldenGateディレクトリからGGSCIを実行します。
  2. ALTER TABLE権限を持つユーザーとしてGGSCIからDB2にログオンします。SOURCEDBでデータソース名を、USERIDおよびPASSWORDでユーザー・ログインを指定します。
    DBLOGIN SOURCEDB dsn, USERID user[, PASSWORD password] 
    
  3. 次のコマンドを発行します。owner.tableは表の完全修飾名です。ワイルドカードを使用して複数の表の名前を指定できますDB2 LUWではアスタリスク(*)ワイルドカードのみサポートされます。
    ADD TRANDATA owner.table
    

    ADD TRANDATAにより次のコマンドが発行されます。これには、LONGVAR列の変更前イメージのロギングが含まれます:

    ALTER TABLE name DATA CAPTURE CHANGES INCLUDE LONGVAR COLUMNS; 
    

例3-1 LONGVARロギングを除外する手順

ALTER TABLEコマンドからINCLUDE LONGVAR COLUMNS句を省略するには、EXCLUDELONGオプション付きでADD TRANDATAを使用します。

ADD TRANDATA owner.table, EXCLUDELONG 

ノート:

LONGVAR列をロギングから除外した場合、変更前イメージを必要とするOracle GoldenGateの機能(GETUPDATEBEFORESNOCOMPRESSUPDATESおよびNOCOMPRESSDELETESパラメータなど)では、表にこれらの列が含まれているとエラーが返される場合があります。回避策については、TRANLOGOPTIONSパラメータのREQUIRELONGDATACAPTURECHANGES | NOREQUIRELONGDATACAPTURECHANGESオプションを参照してください。