Hitachi

ノンストップデータベース HiRDB Version 9 コマンドリファレンス(Windows(R)用)


2.15.1 pdchgconfの形式と規則

〈この項の構成〉

(1) 機能

HiRDBの稼働中に,システム定義を変更します。

pdchgconfコマンドを実行する前に,変更後の定義内容の妥当性を確認してください(pdconfchk -d chgconfコマンドを実行してください)。

pdchgconfコマンドは,HiRDB Advanced High Availabilityを組み込んでいる場合に使用できます。

(2) 実行者

HiRDB管理者が実行できます。

(3) 形式

 pdchgconf

(4) オプション

なし。

(5) 変更手順

システム定義の変更の概要を次の図に示します。

図2‒3 システム定義の変更の概要(pdchgconfコマンド)

[図データ]

[説明]
  1. pdchgconfコマンドを実行する前に,%PDDIR%\confに変更後のシステム定義ファイルを格納するディレクトリchgconfを作成してください。HiRDB/パラレルサーバの場合は,すべてのユニットに作成してください。

  2. %PDDIR%\confにあるすべてのシステム定義ファイルをchgconfディレクトリにコピーした後,システム定義の変更をしてください。

    変更できるシステム定義については,マニュアル「HiRDB Version 9 システム運用ガイド」を参照してください。

  3. pdchgconfコマンドを実行します。

  4. pdchgconfコマンドが終了すると,変更前のシステム定義ファイルは%PDDIR%\confのbackconfディレクトリに退避されます。

  5. %PDDIR%\confには変更後のシステム定義ファイルが格納されます。

(6) 規則

  1. pdchgconfコマンドは,HiRDBが稼働中のときだけ実行できます。

  2. pdchgconfコマンドは,シングルサーバ又はシステムマネジャがあるサーバマシンで実行してください。

(7) 注意事項

  1. pd_system_id,及びpd_master_file_nameオペランドは,pdchgconfコマンドでは変更できません。また,現用のシステムファイル,及び上書きできないシステムファイルに対しても削除はできません。これらの変更,又は削除をするとエラーになります。

  2. pdchgconfコマンドを実行すると,システムログファイルが切り替わります。そのため,pdchgconfコマンドを実行する前に,変更後の構成で稼働するための容量が,システムログファイルにあるかどうかを確認してから実行してください。スワップ先にできるシステムログファイルがない状態でpdchgconfコマンドを実行すると,KFPS01256-Eメッセージを出力し,HiRDBは停止します(アボートコードPsjnf07又はPsjn381を出力)。HiRDBが停止した場合,スワップ先にできるシステムログファイルを準備してから,HiRDBを開始してください。スワップ先にできるシステムログファイルがない場合,システムログファイルを追加する必要があります。スワップ先にできるファイルがない場合の対処方法については,マニュアル「HiRDB Version 9 システム運用ガイド」を参照してください。

  3. pdchgconfコマンドを実行すると,メッセージログファイルが切り替わります。ただし,メッセージログファイルの切り替えを示すメッセージは出力されません。そのため,メッセージログファイルのメッセージログが必要な場合は,pdchgconfコマンドを実行する前にメッセージログファイルのバックアップを取得してください。

  4. 次の条件に該当する場合,pdchgconfコマンドは実行できないことがあります。

    • HiRDB/パラレルサーバの場合で,一部のユニット又はサーバが終了しているとき(縮退起動も含む)。なお,回復不要FESのユニットが停止している場合,pdchgconfコマンドを実行できることがあります。詳細については,「回復不要FESがある場合の注意事項」を参照してください。

    • HiRDB/パラレルサーバの場合で,ユニット間のネットワークに通信障害が発生しているとき

    • pdrplstopコマンドを実行中の場合

    • pdchgconfコマンド実行後に,15分間以上トランザクション,又はユティリティが動作した場合

    • pdstart -rコマンドでHiRDBを開始している場合

    • インメモリRDエリアがある場合

    • HiRDB Datareplicator連携中に,システム定義のpd_rpl_init_startオペランドの内容と,実際のデータ抽出モードが異なっている場合。この場合の詳細を次に示します。

      変更前のpd_rpl_init_startオペランドの内容

      HiRDB Datareplicator連携の状態

      変更後のpd_rpl_init_startオペランドの内容

      pdchgconfコマンドの実行可否

      Y

      実行中

      Y

      N又は省略

      ×

      pdrplstopコマンド実行で停止中

      Y

      ×

      N又は省略

      N又は省略

      停止中

      Y

      ×

      N又は省略

      pdrplstartコマンド実行で実行中

      Y

      N又は省略

      ×

    (凡例)

    ○:実行できます。

    ×:実行できません。

    • 次に示す条件をすべて満たす場合

      (i)pd_mode_confオペランドにAUTOを指定している

      (ii)回復不要FESを定義したユニットが停止している

      (iii)システム定義の変更後に,上記(ii)のユニットの回復不要FESの適用をやめる

  5. pdchgconfコマンドの実行中は,次の運用に制限が生じます。

    • UAPのレスポンスが遅くなることがあります。pdchgconfコマンドの実行時間の目安は,「HiRDBを正常終了する時間+HiRDBを正常開始する時間」です。

    • ほかの運用コマンド及びユティリティは実行しないでください。

    • 系切り替え機能は使用できません。Hitachi HA Toolkit Extensionを使用した系切り替え機能の場合は,pdchgconfコマンドを実行する前に待機系を停止して,pdchgconfコマンドが正常終了した後に変更後のシステム定義に入れ替え,待機系を再開始してください。

  6. HiRDB Datareplicator連携中に,ユニット又はサーバの追加,削除をする場合,HiRDB Datareplicatorの抽出環境の再構築が必要となります。HiRDB Datareplicatorの抽出環境の再構築中に,HiRDBのトランザクションが動作して抽出側DBの追加,更新,及び削除がされると,反映側DBとの不整合が発生します。この場合,pdchgconfコマンドでの構成変更はしないでください。

  7. pdchgconfコマンドの実行が失敗した場合,%PDDIR%\conf下のbackconfディレクトリにある変更前のシステム定義ファイルを使用して,自動的にシステム定義変更前の状態に戻します。戻す処理が失敗した場合,HiRDBが終了することがあります。この場合,エラーメッセージを参照し対処してください。

  8. pdchgconfコマンド実行中,HiRDBの開始,終了に伴うエラーメッセージ及びアボートコードが出力されることがあります。この場合,変更後のシステム定義,又は環境に問題があることがあります。エラーメッセージ,及びアボートコードの対処方法に従って対処してください。

  9. pdchgconfコマンドのリターンコードは,0の場合は正常終了,8の場合は異常終了となります。

  10. 回復不要FESのユニットが停止している場合,次に示す状態ではpdchgconfコマンドを実行できないことがあります。

    • システム定義のpd_mode_confオペランドの指定値がAUTOの場合

    • システム定義変更後に,停止しているユニットのフロントエンドサーバが回復不要FESでなくなる場合

(8) 回復不要FESがある場合の注意事項

  1. 回復不要FESが正常停止していて,該当するユニットが稼働している場合,pdchgconfコマンドは実行できません。

  2. 回復不要FESユニットのサーバマシンがダウンしている場合,pdchgconfコマンドの終了に時間が掛かることがあります。

  3. サーバマシンの起動後に,回復不要FESユニットを一度も開始していない場合,pdchgconfコマンドがエラー終了することがあります。

  4. 回復不要FESのユニット以外のユニットがすべて稼働していて,かつ単独停止中のサーバがない場合,回復不要FESのユニットが停止していても,pdchgconfコマンドを実行できます。ただし,注意事項の5.〜9.に該当する場合は実行できません。

    pdchgconfコマンドは,停止しているユニットの%PDDIR%\conf下にあるシステム定義ファイルを,%PDDIR%\conf\chgconf下のシステム定義ファイルに置き換えます。また,停止しているユニットは,変更後のシステム定義を反映するために再度開始します。ただし,マシンダウンやネットワーク障害などによって,pdchgconfコマンドは,停止しているユニットのシステム定義ファイルの置き換えや開始をしないことがあります。その場合,KFPS04665-Wメッセージが表示されます。KFPS04665-Wメッセージに表示されたユニットに対しては,ユニットを再開始する前に,次の(i),(ii)の操作を必ず行ってください。行わなかった場合,HiRDBがシステム定義の変更を正しく受け付けられなくなり,不正な動作をすることがあります。この場合,すぐに該当ユニットを停止し,(i),(ii)の操作を行ってください。

    (i) %PDDIR%\conf下,%PDCONFPATH%下のシステム定義ファイルを,変更後のシステム定義ファイルに置き換える。

    (ii) pdconfchkコマンドで,ユニット間のシステム定義に差異がないことを確認する。