Hitachi

HiRDB データ連動機能 HiRDB Datareplicator Version 10


6.5.6 抽出側HiRDBの運用手順

抽出側HiRDBの運用手順について説明します。運用手順を運用の目的と状況に分けて説明します。抽出側HiRDBの運用手順と参照先を次の表に示します。

表6‒8 抽出側HiRDBの運用手順と参照先

運用の目的と状況

参照先

項番

タイトル

抽出側Datareplicatorの環境を初期化する場合

(hdestart -iコマンド実行)

(1)

反映側DBの再作成時の運用手順

反映側Datareplicatorの環境を初期化する場合

(hdsstart -iコマンド実行)

反映側DBを再作成する場合

データ連動を中止した場合

システムログファイル又はデータ連動用連絡ファイルの初期化

データ連動の継続実行

(2)

データ連動の継続実行時の運用手順

抽出対象DBの定義変更

(3)

抽出側の表定義と抽出定義変更時の運用手順

抽出定義の変更

pdrplstartコマンドでのHiRDB Datareplicator連携の開始

(4)

pdrplstartコマンド実行時の運用手順

pdrplstopコマンドでのHiRDB Datareplicator連携の中止

(5)

pdrplstopコマンド実行時の運用手順

pdlogchgコマンドでの抽出状態の変更

(6)

pdlogchgコマンド実行時の運用手順

抽出側DBの再作成

(7)

抽出対象DBの再作成時の運用手順

抽出側HiRDBでのシステム再構築

(8)

抽出側HiRDBでのシステム再構築時の運用手順

抽出側HiRDBでのシステム定義の変更

(9)

抽出側HiRDBでのシステム定義の変更時の運用手順

システムログファイルの満杯発生

(10)

システムログファイルがスワップ先にできない場合の運用手順

システムログファイルの抽出未完了状態でのHiRDBのユニット強制停止時にデータ連動を中止する場合

(11)

抽出側HiRDBのユニット強制停止時にデータ連動を中止する場合の運用手順

抽出側HiRDB異常終了

(12)

抽出側HiRDB異常終了時の運用手順

送信先の追加と削除

(13)

送信先の追加/削除の運用手順

〈この項の構成〉

(1) 反映側DBの再作成時の運用手順

すべてのデータが連動し終わる前に次の操作をした場合は,抽出側と反映側の両方のデータ連動の環境を同期を取って初期化し,反映側DBを再作成してください。

なお,すべてのデータが連動し終わったことを確認してから初期化する場合で,反映側DBを再作成する必要がないときの初期化手順については,「6.8 HiRDB及びDatareplicatorの構成変更」を参照してください。

また,エラーの対処方法については,「9.2.2 エラーの対処方法」を参照してください。

反映側DBの再作成時の運用手順を次の図に示します。

図6‒11 反映側DBの再作成時の運用手順

[図データ]

運用手順を図に基づいて説明します。説明の1.〜17. は,図中の番号に対応しています。なお,抽出側HiRDBがパラレルサーバの場合には,hdeprepコマンド,及びhdestartコマンドは,システムマネジャのあるサーバから実行してください。

  1. 連動対象の抽出側DBと反映側DBとの整合性を保つために,抽出側HiRDBの業務を停止します。

  2. 抽出側のデータ連動対象DBをpdholdコマンドで閉塞して,データ連動対象DBの更新を抑止します。

  3. 抽出側Datareplicatorを停止します。

  4. 反映側HiRDBの業務を停止します。

  5. 反映側Datareplicatorを停止します。

  6. 抽出側DBを基に反映側DBを作成します。この場合,HiRDB Dataextractorを使うと,抽出側DBから反映側DBを効率的に作成できます。

  7. 抽出側HiRDBを停止します。

  8. 次の定義ファイルの変更が必要な場合は変更します。

    • 抽出システム定義ファイル

    • 送信環境定義ファイル

    • 抽出環境定義ファイル

  9. 抽出側Datareplicatorの環境を初期化します(hdestart -iコマンド実行)。

  10. 抽出側HiRDBのシステム共通定義でpd_rpl_init_start=Yを指定して抽出側HiRDBを起動します。

  11. 抽出定義の変更が必要な場合は変更します。

  12. 抽出定義をhdeprepコマンドで解析して,抽出定義プリプロセスファイルを作成します。

  13. 次の定義ファイルの変更が必要な場合は変更します。

    • 反映システム定義ファイル

    • 反映環境定義ファイル

    • 反映定義ファイル

  14. 反映側Datareplicatorの環境を初期化して,反映側Datareplicatorを起動します(hdsstart -iコマンド実行)。

  15. 抽出側Datareplicatorを起動します。

  16. 抽出側のデータ連動対象DBの閉塞をpdrelsコマンドで解除します。

  17. 抽出側HiRDBと反映側HiRDBの業務を再開します。

(2) データ連動の継続実行時の運用手順

HiRDBのシステム共通定義にpd_rpl_init_start=Yを指定している場合は,抽出側HiRDBの開始又は再開始に関係なく,前回の抽出側HiRDBでのデータ連動情報のシステムログへの出力状態と抽出側Datareplicatorでのシステムログの抽出状態を引き継いで,HiRDB Datareplicator連携を実行します。このため,pd_rpl_init_start=Y指定時は,抽出側Datareplicatorをhdestartコマンドで起動すると,前回のデータ連動の続きからデータ連動が継続して実行されます。

ただし,pdrplstopコマンドを実行した場合は抽出状態が取り消されるため,pd_rpl_init_start=Yを指定していても,DBの再作成が必要になります。

データ連動を継続して実行している場合(システム共通定義にpd_rpl_init_start=Y指定時)の運用手順を次に示します。

  1. 抽出側HiRDBを起動します(システム共通定義にpd_rpl_init_start=Yを指定)。

  2. 抽出側Datareplicatorをhdestartコマンドで起動します。

  3. 必要に応じて,抽出側HiRDBを終了します。

  4. 抽出側Datareplicatorは,抽出システム定義でsyncterm=trueを指定している場合は,抽出側HiRDBの正常終了時に同期して終了します。この指定がない場合に抽出側Datareplicatorを終了させたいときは,hdestopコマンドを実行します。

(3) 抽出側の表定義と抽出定義変更時の運用手順

抽出側HiRDBの連動対象DBの表定義と,抽出側Datareplicatorの抽出定義を変更する場合の運用手順について説明します。連動対象DBの表定義の内容を変更しなくても,CREATE TABLEをやり直す場合には,ここで示す手順を実施する必要があります。定義の変更時は,すべての抽出対象のバックエンドサーバで,抽出側HiRDBのシステムログをすべて抽出して,反映側へ送信する(抽出情報キューファイル中の更新情報もすべて送信する)ことが必要です。

定義変更時の運用手順には,次の二つの場合があります。それぞれの場合に分けて説明します。

抽出システム定義にsyncterm=true指定時で抽出側HiRDBを正常終了できる場合
  1. 抽出側HiRDBを正常終了します。

    抽出側Datareplicatorは,抽出側HiRDBのシステムログをすべて抽出して反映側へ送信して,送信が完了した時点で自動的に終了します。

  2. 抽出側HiRDBを正常開始します。

    システム共通定義にpd_rpl_init_start=Nを指定して正常開始します。この場合,HiRDB Datareplicator連携を開始する前に,データ連動対象DBを更新するトランザクションを実行しないでください。

  3. 抽出側の定義を変更します。

    表定義の場合:ALTER TABLEや,定義系SQLで定義を変更します。

    抽出定義の場合:抽出定義を変更します。

  4. 抽出側HiRDBがパラレルサーバの場合に,抽出対象表を追加又は削除したときは,「5.3.3 オペランドの説明」の抽出環境定義の「extsuppress」の指定値を見直してください。

    なお,抽出側HiRDBにある連動対象DBの表定義を,一つのバックエンドサーバ内だけで変更する場合には,この手順は必要ありません。

  5. 抽出側Datareplicatorをhdestart -iコマンドで初期化した後,hdeprepコマンドで,抽出定義プリプロセスファイルを再作成します。

    抽出側の表定義だけを変更する場合も,hdeprepコマンドは必ず実行してください。hdeprepコマンドは,抽出側HiRDB稼働中にだけ実行できます。

  6. 抽出側Datareplicatorをhdestartコマンドで起動します。

  7. 一度抽出側HiRDBを正常終了し,pd_rpl_init_startの指定をNからYに変更して正常開始します。

抽出システム定義でsyncterm=trueを指定していない場合,又は抽出側HiRDBを正常終了できない場合
  1. データ連動対象DBをpdholdコマンドで閉塞して,データ連動対象DBの更新を抑止します。

  2. 抽出側Datareplicatorで,抽出側HiRDBのシステムログをすべて抽出して,反映側へ送信します(抽出情報キューファイル中の更新情報もすべて送信してください)。

    抽出状態と送信状態は,次の方法で確認します。

    ・pdlsコマンド

    ・hdestateコマンド

    ・抽出側Datareplicatorの出力するメッセージ

  3. 抽出側HiRDBのすべてのシステムログの抽出完了と送信完了を確認してから,抽出側Datareplicatorをhdestopコマンドで終了します。

    システムログの抽出完了と送信完了の確認手順については,「6.8.2 抽出側システムの構成変更」の手順2を参照してください。

  4. 次の変更をする場合は,抽出側HiRDBでのHiRDB Datareplicator連携をpdrplstopコマンドで中止します。

    ・抽出対象の表がないバックエンドサーバに抽出対象の表を追加する場合

    ・抽出対象の表を削除する場合

  5. 抽出側の定義を変更します。

    表定義の場合:ALTER TABLEや,定義系SQLで定義を変更します。

    抽出定義の場合:抽出定義を変更します。

  6. 抽出側HiRDBがパラレルサーバの場合に,抽出対象表を追加又は削除したときは,「5.3.3 オペランドの説明」の抽出環境定義の「extsuppress」の指定値を見直してください。

    なお,抽出側HiRDBにある連動対象DBの表定義を,一つのバックエンドサーバ内だけで変更する場合には,この手順は必要ありません。

  7. 抽出側Datareplicatorをhdestart -iコマンドで初期化した後,hdeprepコマンドで,抽出定義プリプロセスファイルを再作成します。

    抽出側の表定義だけを変更する場合も,hdeprepコマンドは必ず実行してください。hdeprepコマンドは,抽出側HiRDB稼働中にだけ実行できます。

  8. 抽出側Datareplicatorをhdestartコマンドで起動します。

  9. 抽出側HiRDBでのHiRDB Datareplicator連携を中止している場合は,pdrplstartコマンドで再開始します。

  10. データ連動対象DBの閉塞をpdrelsコマンドで解除します。

(4) pdrplstartコマンド実行時の運用手順

pdrplstartコマンド実行時の運用手順を次に示します。

  1. データ連動対象DBをpdholdコマンドで閉塞して,データ連動対象DBの更新を抑止します。

  2. 反映側DBを作成していない場合,又は抽出側DBと反映側DBとの間に不整合が発生している場合は,抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

  3. 抽出側HiRDBで,pdrplstartコマンドを実行してデータ連動を開始します。

  4. 抽出側Datareplicatorをhdestartコマンドで起動します。

  5. データ連動対象DBの閉塞をpdrelsコマンドで解除します。

(5) pdrplstopコマンド実行時の運用手順

pdrplstopコマンドを実行して,HiRDB Datareplicator連携を中止する場合の運用手順を次に示します。

  1. pdrplstopコマンドでHiRDB Datareplicator連携を中止します。

  2. 抽出側Datareplicatorをhdestopコマンドで終了して,反映側Datareplicatorをhdsstopコマンドで終了します。抽出側と反映側Datareplicatorの終了は,データ連動初期化までの任意の時期に実行してかまいません。

  3. 抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを再作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

(6) pdlogchgコマンド実行時の運用手順

pdlogchgコマンドを使って,システムログファイルの抽出状態を強制的に変更する場合の運用手順を次に示します。HiRDB Datareplicator連携中にpdlogchgコマンドで抽出状態を変更した場合,反映側DBの再作成が必要です。

  1. pdrplstopコマンドでHiRDB Datareplicator連携を中止します。

  2. 抽出側Datareplicatorをhdestopコマンドで終了して,反映側Datareplicatorをhdsstopコマンドで終了します。抽出側と反映側Datareplicatorの終了は,データ連動初期化までの任意の時期に実行してかまいません。

  3. -Rオプションを指定したpdlogchgコマンドで,システムログファイルの抽出未完了状態を抽出完了状態に変更します。抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを再作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

(7) 抽出対象DBの再作成時の運用手順

抽出対象DBの再作成時の運用手順を次に示します。

  1. pdrplstopコマンドでHiRDB Datareplicator連携を中止します。

  2. 抽出側Datareplicatorをhdestopコマンドで終了して,反映側Datareplicatorをhdsstopコマンドで終了します。抽出側と反映側Datareplicatorの終了は,データ連動初期化までの任意の時期に実行してかまいません。

  3. 抽出対象DBを再作成します。

  4. データ連動対象DBをpdholdコマンドで閉塞して,データ連動対象DBの更新を抑止します。

  5. 抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを再作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

(8) 抽出側HiRDBでのシステム再構築時の運用手順

抽出側HiRDBでのシステム再構築時の運用手順を次に示します。

  1. 抽出側HiRDBを正常終了します。

  2. 抽出側Datareplicatorをhdestopコマンドで終了して,反映側Datareplicatorをhdsstopコマンドで終了します。抽出側と反映側Datareplicatorの終了は,データ連動初期化までの任意の時期に実行してかまいません。

  3. 抽出側HiRDBのシステムを再構築して,システム共通定義にpd_rpl_init_start=Nを指定して抽出側HiRDBを正常開始します( -iオプション指定)。

  4. 抽出側DBを再作成します。

  5. 抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを再作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

(9) 抽出側HiRDBでのシステム定義の変更時の運用手順

抽出側HiRDBでシステム定義を変更するときの運用手順を次に示します。

  1. 抽出側HiRDBを正常終了します。

  2. 抽出側Datareplicatorをhdestopコマンドで終了します。

  3. 抽出側HiRDBのシステム定義を変更します。

  4. 抽出側HiRDBを開始します。

  5. 抽出側Datareplicatorをhdestartコマンドで起動します。

(10) システムログファイルがスワップ先にできない場合の運用手順

すべてのシステムログファイルがスワップ先にできない場合に,抽出未完了状態のためにスワップ先にできないシステムログファイルがあったときの,運用手順について説明します。

すべてのシステムログファイルがスワップ先にできない場合の運用手順を次の図に示します。

図6‒12 すべてのシステムログファイルがスワップ先にできない場合の運用手順

[図データ]

運用手順を図に基づいて説明します。説明の1.〜8. は,図中の番号に対応しています。

  1. 抽出側HiRDBは,システム共通定義のpd_log_rpl_no_standby_file_oprの指定に従って対応します。

  2. stop指定時又はpd_log_rpl_no_standby_file_opr省略時は,抽出側HiRDBの該当ユニットが強制停止します。

  3. 抽出側Datareplicatorが停止している場合は起動します。

  4. 抽出側Datareplicatorで抽出中のログファイルが別のファイルに移った(抽出完了のファイルが一つ以上できた)ことを確認します。システムログファイルの抽出状態は,pdloglsコマンドでそれぞれのシステムログファイルの状態を確認してから,pdls -d rpl -jコマンドで抽出がどこまで進んでいるかを確認すると判定できます。

  5. 抽出側HiRDBのユニットを再開始します。

  6. continue指定時は,HiRDB Datareplicator連携を中止して抽出側HiRDBでの処理だけを続行します。抽出未完了状態のためにスワップ先にできるファイルがなくなった時点で,抽出側HiRDBはHiRDB Datareplicator連携を中止して,抽出側HiRDBだけで運用を続行します。抽出側HiRDBは,スワップ先にできるファイルがなくなった時点ですべてのシステムログファイルの抽出状態を解消します。

  7. 抽出側Datareplicatorをhdestopコマンドで終了して,反映側Datareplicatorをhdsstopコマンドで終了します。抽出側と反映側Datareplicatorの終了は,データ連動初期化までの任意の時期に実行してかまいません。

  8. 抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを再作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

(11) 抽出側HiRDBのユニット強制停止時にデータ連動を中止する場合の運用手順

HiRDBのシステム共通定義の指定によって,システムログファイルが抽出未完了状態のために抽出側HiRDBのユニットが強制停止した場合に,抽出側Datareplicatorを起動しても問題を解決できないとき,データ連動を中止して抽出側HiRDBの処理だけを続行する運用手順について説明します。

抽出側HiRDBのユニット強制停止時にデータ連動を中止する場合の運用手順を次の図に示します。

図6‒13 抽出側HiRDBのユニット強制停止時にデータ連動を中止する場合の運用手順

[図データ]

運用手順を図に基づいて説明します。説明の1.〜7. は,図中の番号に対応しています。

  1. 定義を変更できる場合は,システム共通定義のpd_log_rpl_no_standby_file_ oprオペランドの指定をcontinueに変更します。

  2. 抽出側HiRDBを再開始します。

  3. 定義を変更できない場合は,-Rオプションを指定したpdlogchgコマンドをすべてのログファイルに対して実行して,抽出未完了状態を抽出完了状態に強制的に変更します。

  4. 抽出側HiRDBを再開始します。

  5. pdrplstopコマンドでHiRDB Datareplicator連携を中止します。

  6. 抽出側Datareplicatorをhdestopコマンドで終了して,反映側Datareplicatorをhdsstopコマンドで終了します。抽出側と反映側Datareplicatorの終了は,データ連動初期化までの任意の時期に実行してかまいません。

  7. 抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを再作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

(12) 抽出側HiRDB異常終了時の運用手順

抽出側HiRDBが異常終了した場合の運用手順を次の図に示します。

図6‒14 抽出側HiRDBが異常終了した場合の運用手順

[図データ]

運用手順を図に基づいて説明します。説明の1.〜7. は,図中の番号に対応しています。

  1. 抽出側HiRDBの異常終了の原因を取り除きます。

  2. 抽出側HiRDBを再開始します。

  3. 抽出側Datareplicatorをhdestopコマンドで終了して,反映側Datareplicatorをhdsstopコマンドで終了します。抽出側と反映側Datareplicatorの終了は,データ連動初期化までの任意の時期に実行してかまいません。

  4. 抽出側HiRDBを強制正常開始します。

  5. pdrplstopコマンドでHiRDB Datareplicator連携を中止します。

  6. 抽出側DBを再作成します。

  7. 抽出側と反映側の両方のデータ連動の環境を,同期を取って初期化して,抽出側DBを基に反映側DBを再作成します。詳細は,「(1)反映側DBの再作成時の運用手順」を参照してください。

(13) 送信先の追加/削除の運用手順

抽出側Datareplicatorに対して,送信先を追加又は削除する場合の運用手順を次の図に示します。

図6‒15 送信先を追加又は削除するときの運用手順

[図データ]

運用手順を図に基づいて説明します。説明の1.〜4. は,図中の番号に対応しています。

  1. データ連動対象DBをpdholdコマンドで閉塞して,データ連動対象DBの更新を抑止します。

  2. 抽出側Datareplicatorで,抽出側HiRDBのシステムログをすべて抽出し,反映側へ送信されていることを確認します(抽出情報キューファイル中の更新情報もすべて送信していることを確認してください)。

    抽出状態と送信状態は,次の方法で確認します。

    • pdlsコマンド

    • hdestateコマンド

    • 抽出側Datareplicatorの出力するメッセージ

  3. 抽出側HiRDBのすべてのシステムログの抽出完了と送信完了を確認してから,抽出側Datareplicatorをhdestopコマンドで終了します。

    システムログの抽出完了と送信完了の確認手順については,「6.8.2 抽出側システムの構成変更」の手順2を参照してください。

  4. 抽出側の定義を変更します。

    送信先を追加する場合

    抽出システム定義で送信先の欠番を定義している場合は,欠番になっている定義を追加する送信先に変更します。欠番を定義していない場合は,新しい送信先に関する定義(sendidオペランド及びsenddefオペランド)を追加します。

    送信先を削除する場合

    抽出システム定義の送信先定義を,欠番に変更します。

以降の手順は,手順4で抽出システム定義に対して新しい送信先を追加(抽出システム定義に対してsendidオペランド及びsenddefオペランドを新たに追加)したかどうかで異なります。

新しい送信先を追加しなかった場合は手順Aを,追加した場合は手順Bに従ってください。

手順A
  1. 抽出側Datareplicatorに対して定義変更を行った送信先に対する部分初期化を実行します。

  2. hdeprepコマンドを実行し,抽出定義プリプロセスを作成します。

  3. 抽出側DBを基に,追加する送信先の反映側DBを作成します。

  4. 追加する送信先の反映側Datareplicatorの環境を初期化します。

    反映Datareplicator環境を初期化する際は,事前に次の定義ファイルを作成しておく必要があります。

     ・反映システム定義ファイル

     ・反映環境定義ファイル

     ・反映定義ファイル

  5. hdestartコマンドを実行し,抽出側Datareplicatorを起動します。

  6. pdrelsコマンドを実行し,抽出側のデータ連動対象DBの閉塞を解除します。

  7. 抽出側HiRDBの業務を再開します。

手順B
  1. 既存の全送信先の反映側Datareplicatorについて,抽出側から送信されたデータがすべて反映されていることを確認します。

    反映情報キューファイルの更新情報がすべて反映されていることを,hdsstateコマンドを実行して確認してください。hdsstateコマンドを実行して取得したステータス情報の,<COMMUNICATION INFORMATION>のwrite positionと<REFLECTION INFORMATION>のread positionが同じになっていれば,すべての更新情報が反映されています。

  2. 既存の全送信先の反映側Datareplicatorをhdsstopコマンドで終了します。

  3. 抽出側DBを基に,追加する送信先の反映側DBを作成します。

  4. 既存の全送信先の反映側Datareplicator及び追加する送信先の反映側Datareplicatorの環境を初期化します。

    追加する送信先の反映側Datareplicator環境を初期化する際は,事前に次の定義ファイルを作成しておく必要があります。

     ・反映システム定義ファイル

     ・反映環境定義ファイル

     ・反映定義ファイル

  5. pdstopコマンドを実行し,抽出側HiRDBを正常停止します。

  6. hdestart -iコマンドを実行し,抽出側Datareplicatorの環境を初期化します。

  7. pdstartコマンドを実行し,抽出側HiRDBを起動します。

  8. hdeprepコマンドを実行し,抽出定義プリプロセスを作成します。

  9. hdestartコマンドを実行し,抽出側Datareplicatorを起動します。

  10. 抽出側HiRDBの業務を再開します。