ページの先頭行へ戻る
Symfoware Server V12.7.0 データベース二重化導入運用ガイド
FUJITSU Software

8.6.3 副系ノードでの利用者業務の実行

Mirroring Controllerを利用している場合、副系ノードでは、利用者業務として参照系業務を行うことができます。
ただし、副系ノードで実行する利用者業務の参照目的によって手順が異なります。

これらの目的ごとに、副系ノードでの利用者業務の実行方法について以下に説明します。

参照

副系ノードでの利用者業務の実行については“8.6.4 副系ノードでの利用者業務の留意点”を参照してください。

8.6.3.1 正系ノードの利用者業務の完了を意識した参照

すでに正系ノードの利用者業務によって確定された最新のデータベースの更新結果や、ある任意の時間帯でのデータベースの状態が必要な場合など、正系ノードを意識したデータベースの更新結果を副系ノードで参照する場合の手順を示します。

ある時点のデータベースの更新結果を参照したい場合

意図した利用者業務の更新結果や、特定の時間までに完了した利用者業務の更新結果が、副系ノードでの参照系業務に必要な場合には、その時点で正系ノードのRLCの強制交替を行い、強制交替を行ったRLCが副系ノードへのデータベースに反映されたことを確認してから参照系業務を行います。

操作の手順

データベースサーバ1の操作
  1. rdbbcdcuコマンドのVオプションを実行して、主系RLPのRLP名を特定します。
    ここでは、RLP名が“rlp001”と特定できます。

    > rdbbcdcu -V
    
    LogGroup             : system
    RLCbuffNum           : 128
    RLCbuffSize          : 2K
    RLCnum               : 10
    RLCsize              : 10240K
    RLPid  RLPname  Kind      OnMode   OnStat       RLPstat       InhCause  ConStat        DisConCause    LogRemain
        1  rlp001   origin    capture  online       normal        -         connection     -                      -
  2. 特定した主系RLPに対してRLCの強制交替を行います。

    > rdbbcswh -p RLP名
  3. RLCの交替を通知する以下のメッセージをRDBREPORTから確認し、強制交替したRLC通番を特定します。

    qdg20150i:RLCを交替しました RLC通番='RLC通番' RLP名='RLP名'

注意

頻繁にRLCの強制交替を行うと、RLCファイルの交替不可を招く危険性があります。十分に注意して実行してください。

参照

RDBREPORTでのメッセージ監視については“9.1.1 Symfoware/RDBのメッセージ監視”を参照してください。

データベースサーバ2の操作
  1. rdbbcdcuコマンドのVオプションを実行して、主系RLPのRLP名を特定します。
    ここでは、RLP名が“rlp001”と特定できます。

    > rdbbcdcu -V
    
    LogGroup             : system
    RLCbuffNum           : 128
    RLCbuffSize          : 2K
    RLCnum               : 10
    RLCsize              : 10240K
    RLPid  RLPname  Kind       OnMode    OnStat      RLPstat      InhCause  ConStat        DisConCause    LogRemain
        1  rlp001   duplicate  reflect   online       normal      -         connection     -                      0M
  2. データベースサーバ1の操作で特定した強制交替したRLC通番に対する反映が完了したことを、rdbbcrlpコマンドのVオプション、Oオプション、およびpオプションを実行して確認します。
    “反映済み最終RLC通番 (MaxReflectRLC)”が、データベースサーバ1の操作の項番3で特定したRLC通番以上であれば、反映が完了しています。

    > rdbbcrlp -V -O -p rlp001
    
    RLPid                : 1
    RLPname              : rlp001
    LogGroup             : system
    OnlineMode           : reflect
    Online/Offline       : online
    RLPstatus            : normal
    InhibitCause         : -
    Connection           : connection
    DisconnectCause      : -
    MaxExtractRLC        : 100
    MaxReflectRLC        : 100
    
    RLM            RLMstatus
    OwnRLM-S       normal
    OwnRLM-R       normal
    OtherRLM-S     normal
    OtherRLM-R     normal
    
    RLCid  RLCserial  RLCstatus     Total  Capacity      Used  Backup     Extract
    rlc001        99  empty        10240K    10240K        0K  purge      complete
    rlc002       100  empty        10240K    10240K        0K  purge      complete
    rlc003       101  using        10240K    10240K         -  -          -
    
  3. 参照系業務を開始します。

アプリケーションサーバの操作
  1. 意図した利用者業務の完了や特定の時間帯に到達したことを確認します。

ポイント

副系ノードでの参照系業務はDBミラーリングサービスを停止せずに実行することが可能です。ただし、その場合にはDBミラーリングシステムはデータベース二重化処理を継続して行っているため、利用者業務との競合を留意する必要があります。

任意の時間で締め切ったデータベースの更新結果を参照する場合

副系ノードで実行する利用者業務が帳票出力の場合など、正系ノードでのある任意の時間で締め切ったデータベースの更新結果を参照する場合には、利用者業務をいったん停止させ、その時間内に正系ノードでRLCの強制交替とDBミラーリングサービスの保守停止を行います。その後、正系ノードおよび副系ノードの利用者業務を開始します。

操作の手順

データベースサーバ1の操作
  1. rdbbcdcuコマンドのVオプションを実行して、主系RLPのRLP名を特定します。

    > rdbbcdcu -V
    
    LogGroup             : system
    RLCbuffNum           : 128
    RLCbuffSize          : 2K
    RLCnum               : 10
    RLCsize              : 10240K
    RLPid  RLPname  Kind     OnMode   OnStat        RLPstat      InhCause  ConStat        DisConCause    LogRemain
        1  rlp001   origin   capture  online        normal       -         connection     -                      -
  2. 特定した主系RLPに対してRLCの強制交替を行います。

    > rdbbcswh -p RLP名
  3. RLCの交替を通知する以下のメッセージをRDBREPORTから確認し、強制交替したRLC通番を特定します。

    qdg20150i:RLCを交替しました RLC通番='RLC通番' RLP名='RLP名'

参照

RDBREPORTでのメッセージ監視については“9.1.1 Symfoware/RDBのメッセージ監視”を参照してください。

データベースサーバ2の操作
  1. rdbbcdcuコマンドのVオプションを実行して、主系RLPのRLP名を特定します。

    > rdbbcdcu -V
    
    LogGroup             : system
    RLCbuffNum           : 128
    RLCbuffSize          : 2K
    RLCnum               : 10
    RLCsize              : 10240K
    RLPid  RLPname  Kind       OnMode   OnStat       RLPstat     InhCause   ConStat        DisConCause    LogRemain
        1  rlp001   duplicate  reflect  online       normal      -          connection     -                      0M
  2. rdbbcrlpコマンドのVオプション、Oオプション、pオプションを実行して、データベースサーバ1の手順3の操作で特定したRLCファイルの反映が完了していることを確認します。

    実行例
    > rdbbcrlp -V -O -p rlp001
    
    RLPid                : 1
    RLPname              : rlp001
    LogGroup             : system
    OnlineMode           : reflect
    Online/Offline       : online
    RLPstatus            : normal
    InhibitCause         : -
    Connection           : connection
    DisconnectCause      : -
    MaxExtractRLC        : 100
    MaxReflectRLC        : 100
    
    RLM            RLMstatus
    OwnRLM-S       normal
    OwnRLM-R       normal
    OtherRLM-S     normal
    OtherRLM-R     normal
    
    RLCid  RLCserial  RLCstatus     Total  Capacity      Used  Backup     Extract
    rlc001        99  empty        10240K    10240K        0K  purge      complete
    rlc002       100  empty        10240K    10240K        0K  purge      complete
    rlc003       101  using        10240K    10240K         -  -          -

    “反映済み最終RLC通番 (MaxReflectRLC)”と、データベースサーバ1の手順3の操作で特定したRLC通番との一致を確認します。

  3. dxsvstopコマンドのmオプションを実行して、DBミラーリングサービスを保守停止します。

    > dxsvstop -m
  4. 参照系業務を開始します。

  5. 参照系業務を停止します。

  6. dxsvstartコマンドのrオプションを実行して、DBミラーリングサービスを開始します。

    > dxsvstart -r
アプリケーションサーバの操作
  1. 利用者業務を停止します。

  2. データベースサーバ2でのDBミラーリングサービスの保守停止を行ってから、利用者業務を再開します。

注意

副系ノードでの利用者業務の実行は、DBミラーリングサービスの停止中に行うため、その間は副系ノードでのデータベース二重化処理が停止しています。
長期間の利用者業務を実行する場合には、利用者業務の実行時間を考慮したRLCファイルの見積りを行ってください。

参照

RLCファイルの見積りについては“4.3.1.3.2 RLCファイルの見積り”を参照してください。

8.6.3.2 正系ノードの利用者業務の完了を意識しない参照

正系ノードでの利用者業務を継続した状態で、正系ノードを意識せずに副系ノードで参照系業務を行う場合には、特に利用者操作は不要です。