ページの先頭行へ戻る
Linkexpress Replication optionV5.0L25 導入運用ガイド

2.1.4 抽出定義

抽出定義は、複写元システムでレプリケーション対象のデータを抽出するための定義です。
複写元システムで、レプリケーション運用するすべての表に対して抽出定義を行います。1つの表に対して複数の抽出定義を行うこともできます。
抽出定義は、抽出定義コマンド(lxrepcreコマンド)で行います。
ここでは、抽出定義コマンドによる抽出定義の方法について説明します。あわせて、コマンドによる抽出定義情報の表示方法や抽出定義の削除方法について説明します。

なお、抽出定義の入力ファイルのサンプルについては、“付録C サンプルファイル一覧”を参照してください。
また、定義ファイル作成コマンド(lxrepmkdefコマンド)により、抽出定義の入力ファイルの雛型を作成することができます。詳細は、“コマンドリファレンス”の“lxrepmkdefコマンド”を参照してください。

2.1.4.1 抽出定義コマンド

抽出定義を行うには、テキストファイルに各種定義項目を記述し、抽出定義コマンド(lxrepcreコマンド)を実行します。コマンドの詳細については、“コマンドリファレンス”の“lxrepcreコマンド”を参照してください。

なお、抽出定義コマンドを実行するには、Symfoware/RDBを起動する必要があります。

説明

指定したデータベースをレプリケーションの抽出対象にします。

操作方法

lxrepcre  入力ファイル名

以下に、抽出定義の入力ファイルの記述方法について説明します。

以下の2つの場合について説明します。

2.1.4.1.1 表単位のレプリケーションでの抽出定義

表単位のレプリケーションでの抽出定義の方法を、以下の運用例に基づいて説明します。

なお、ここで説明するもの以外にも抽出定義の定義項目は存在します。詳細については、“コマンドリファレンス”の“lxrepcreコマンド”を参照してください。

レプリケーション運用例

抽出定義コマンドの入力ファイルの記述例

# 抽出定義
REPNAME  = 社員管理抽出定義                                              → 1
REPTYPE  = COPY                                                          → 2

DBMSKIND = SYMFO                                                         → 3
INCODE   = EUC-S90                                                       → 4
DATABASE = 社員管理データベース                                          → 5
SCHEMA   = 社員スキーマ                                                  → 6
TABLE    = 社員表                                                        → 7
WHERE    = (支店名)
           =(?)
           USING(N’大阪’)                                              → 8

LOGPATH  = /home/work/logdata_db01/                                      → 9
LOGSIZE  = 1024                                                          →10
LOGWARN  = 70                                                            →11

OUTCODE  = EUC-S90                                                       →12
DIFFTYPE = OPEN                                                          →13
NULLIND  = YES                                                           →14
BYTESWAP = NO                                                            →15

備考:「#」で始まる行はコメント行です。

以下に表単位のレプリケーションに対する抽出定義のオペランドについて説明します。各オペランドの番号は、入力ファイルの記述例の番号と対応します。

  1. REPNAME(抽出定義名

    抽出定義名を指定します。

  2. REPTYPE(運用種別

    レプリケーションの運用種別を指定します。

  3. DBMSKIND(データベース種別

    複写元のデータベースシステムの種別を指定します。

    Symfoware抽出レプリケーションの場合は“SYMFO”を指定します。

  4. INCODE(データベースコード系

    複写元のデータベースシステムのコード系を指定します。

  5. DATABASE(データベース名

    レプリケーション対象となる複写元のデータベース名を指定します。

  6. SCHEMA(スキーマ名

    レプリケーション対象となる複写元のスキーマ名を指定します。

  7. TABLE(表名

    レプリケーション対象となる複写元の表名を指定します。

  8. WHERE(条件指定

    レプリケーション対象となる複写元の条件を指定します。

  9. LOGPATH(差分ログファイル格納ディレクトリパス名

    差分ログファイルを格納する任意のディレクトリパス名を指定します。

  10. LOGSIZE(差分ログファイルサイズ

    差分ログファイルのサイズを指定します。

  11. LOGWARN(差分ログファイル警告率

    差分ログファイルに蓄積されたデータ量が指定した割合を超えたときに、コンソールに対して警告メッセージが通知されます。なお、コンソールについては、“マニュアルの読み方”を参照してください。

  12. OUTCODE(抽出コード系

    抽出するコード系を指定します。

  13. DIFFTYPE(抽出差分形式

    抽出データの形式を指定します。

    オープンサーバ間で表単位のレプリケーションの場合は、“OPEN”(オープン独自形式)を指定します。

  14. NULLIND(ナル表示域の有無

    抽出データにナル表示域を含むか、含まないかを指定します。

  15. BYTESWAP(バイトスワップの指定

    データの抽出時にバイトスワップを行うか、行わないかを指定します。

2.1.4.1.2 グループ単位のレプリケーションでの抽出定義

グループ単位のレプリケーションでの抽出定義の方法を、以下の運用例に基づいて説明します。

なお、ここで説明するもの以外にも抽出定義の定義項目は存在します。詳細については、“コマンドリファレンス”の“lxrepcreコマンド”を参照してください。

レプリケーション運用例

  

抽出定義コマンドの入力ファイルの記述例

以下にグループ単位のレプリケーションに対する抽出定義のオペランドについて説明します。各オペランドの番号は、入力ファイルの記述例の番号と対応します。

なお、入力ファイルの記述例に*印として表したオペランドは、表単位のレプリケーションの場合と同じです。“2.1.4.1.1 表単位のレプリケーションでの抽出定義”を参照してください。

  1. REPTYPE(運用種別

    レプリケーションの運用種別を指定します。

    レプリケーショングループ(抽出グループともいいます)を定義する場合は“COPY”を指定します。

    レプリケーショングループに属する抽出定義(メンバ抽出定義)を定義する場合は“MEMBER”を指定します。

  2. GRPNAME(レプリケーショングループ名

    レプリケーショングループ名(抽出グループ名ともいいます)を指定します。

  3. MEMBER(レプリケーショングループに属する抽出定義名

    レプリケーショングループに属する抽出定義名(メンバ抽出定義名)を指定します。

  4. DIFFTYPE(抽出差分形式

    抽出データの形式を指定します。

    グループ単位のレプリケーションの場合は、“JNL”(ジャーナル形式)を指定します。

2.1.4.2 抽出定義の定義内容の表示

抽出定義またはレプリケーショングループの定義内容を表示するには、抽出定義の定義内容表示コマンド(lxrepprtコマンド)を実行します。コマンドの詳細については、“コマンドリファレンス”の“ lxrepprtコマンド(抽出定義の定義内容の表示)”を参照してください。

説明

指定した抽出定義またはレプリケーショングループの定義内容を表示します。

-rオプションで抽出定義名を指定すると、その抽出定義の内容を表示します。

-gオプションでレプリケーショングループ名を指定すると、そのレプリケーショングループの定義内容を表示します。

操作方法

lxrepprt  {  -r  抽出定義名  |  -g  レプリケーショングループ名  }

抽出定義名指定時の表示形式

# Extract Definition Infomation
REPNAME  = 社員管理抽出定義                                              → 1
REPTYPE  = COPY                                                          → 2
DBMSKIND = SYMFO                                                         → 3
INCODE   = EUC-S90                                                       → 4
DATABASE = 社員管理データベース                                          → 5
SCHEMA   = 社員スキーマ                                                  → 6
TABLE    = 社員表                                                        → 7
WHERE    = (支店名)
           =(?)
           USING(N’大阪’)                                              → 8
LOGPATH  = /home/work/logdata_db01/                                      → 9
LOGSIZE  = 1024                                                          →10
LOGWARN  = 70                                                            →11
OUTCODE  = EUC-S90                                                       →12
DIFFTYPE = OPEN                                                          →13
NULLIND  = YES                                                           →14
BYTESWAP = NO                                                            →15
  1. 抽出定義名

  2. 運用種別

  3. データベース種別

  4. データベースコード系

  5. データベース名

  6. スキーマ名

  7. 表名

  8. 条件指定

  9. 差分ログファイル格納ディレクトリパス名

  10. 差分ログファイルサイズ

  11. 差分ログファイル警告率

  12. 抽出コード系

  13. 抽出差分形式

  14. ナル表示域の有無

  15. バイトスワップの指定

レプリケーショングループ名指定時の表示形式

# Extract Group Information
GRPNAME  = 受注管理抽出グループ                                   → 1
REPTYPE  = COPY
DBMSKIND = SYMFO
INCODE   = EUC-S90
MEMBER   = 受注表抽出定義,在庫表抽出定義                          → 2
LOGPATH  = /home/work/logdata_db02/
LOGSIZE  = 1024
LOGWARN  = 70
OUTCODE  = EUC-S90
DIFFTYPE = JNL
NULLIND  = YES
BYTESWAP = NO
  1. レプリケーショングループ名

  2. レプリケーショングループに属する抽出定義名

その他オペランドの表示形式は、抽出定義名指定の場合と同じです。

2.1.4.3 抽出定義の削除

抽出定義またはレプリケーショングループを削除するには、抽出定義削除コマンド(lxrepdroコマンド)を実行します。レプリケーション運用中は抽出定義またはレプリケーショングループを削除しないでください。コマンドの詳細については、“コマンドリファレンス”の“lxrepdroコマンド”を参照してください。

なお、抽出定義削除コマンドを実行するには、Symfoware/RDBを起動する必要があります。

説明

指定した抽出定義またはレプリケーショングループを削除します。

抽出定義名を-rオプションに指定すると、その抽出定義を削除します。

レプリケーショングループ名を-gオプションに指定すると、そのレプリケーショングループを削除します。

抽出定義名またはレプリケーショングループ名は入力ファイル内に記述することもできます。

-eオプションを指定することによって、まだ抽出されていない差分ログが、トランザクションログファイルや差分ログファイルに残っている場合でも、強制的に抽出定義を削除することができます。

その他のオプションについては、“コマンドリファレンス”の“lxrepdroコマンド”を参照してください。

操作方法

lxrepdro  [  -e [ -c ] ]
          [  -Z  ]
          {  -r  抽出定義名
          |  -g  レプリケーショングループ名
          |  入力ファイル名  }