Hitachi

ノンストップデータベース HiRDB Version 9 システム運用ガイド(UNIX(R)用)


1.7.2 計画停止,強制終了,又は異常終了したときの注意事項

HiRDBが計画停止,強制終了,又は異常終了したときは,次に示すことに注意してください。

〈この項の構成〉

(1) HiRDBのバージョンは変更はできません

HiRDBが計画停止,強制終了,又は異常終了したときに,HiRDBのバージョンは変更できません。変更するとHiRDBの再開始に失敗します。HiRDBのバージョンを変更する場合は,必ずHiRDBを正常終了させてください。

(2) HiRDBシステム定義の変更は一部だけできます

HiRDBが計画停止,強制終了,又は異常終了したときに,HiRDBシステム定義のオペランドで変更できないものがあります。変更できないオペランドについては,マニュアル「HiRDB Version 9 システム定義」を参照してください。

●HiRDB/パラレルサーバの場合

HiRDBの正常終了又は計画停止時に一部のユニットが異常終了した場合,次回のHiRDB開始前にHiRDBシステム定義を変更しないでください。変更すると,HiRDBの開始に失敗します。失敗しなくても,開始後に正常に稼働できなくなります。

(3) サーバ構成の変更はできません(HiRDB/パラレルサーバ限定)

HiRDBが計画停止,強制終了,又は異常終了したときに,HiRDBのサーバ構成を変更しないでください。再開始前にはシステム共通定義のpdstartオペランドとpdunitオペランドは変更できません。変更すると,HiRDBの再開始に失敗します。

HiRDBのサーバ構成を変更する場合は,必ずHiRDBを正常終了させてください。正常終了後であれば,HiRDBのサーバの構成を変更できます。その場合は,次に示すファイルを再初期化してください。再初期化をしないと,HiRDBの開始に失敗することがあります。

(4) グローバルバッファの追加,削除,変更について

HiRDBが強制終了又は異常終了したときには,次の表に示すグローバルバッファの操作ができません。

表1‒9 強制終了,異常終了したときにできないグローバルバッファの操作

グローバルバッファの操作

正常終了,計画停止

強制終了,異常終了

グローバルバッファの追加

(pdbufferオペランドの追加)

×

グローバルバッファの削除

(pdbufferオペランドの削除)

×

グローバルバッファの変更

(pdbufferオペランドの変更)

×

(凡例)

○:操作できます。

×:操作できません。

(5) HiRDB稼働中に追加したRDエリアに割り当てたグローバルバッファについて

HiRDB稼働中に追加したRDエリアに割り当てたグローバルバッファは,終了モードによって,次回開始時に引き継がれるかどうかが決まります。詳細を次の表に示します。

表1‒10 HiRDB稼働中に追加したRDエリアに割り当てたグローバルバッファを引き継ぐかどうか

条件

正常終了,計画停止

強制終了,異常終了

HiRDB稼働中に追加したRDエリアに割り当てたグローバルバッファを引き継ぐかどうか

引き継ぎません

引き継ぎます

(6) ステータスファイルの削除,変更,初期化はできません

HiRDBが計画停止,強制終了,又は異常終了したときには,次の表に示すステータスファイルの操作ができません。

表1‒11 計画停止,強制終了,異常終了したときにできないステータスファイルの操作

ステータスファイルの操作

正常終了

計画停止,強制終了,異常終了

ステータスファイルの追加

ステータスファイルの削除

×

ステータスファイルの変更

×

ステータスファイルの初期化

×

(凡例)

○:操作できます。

×:操作できません。実行すると再開始できなくなります。

●計画停止,強制停止,異常終了後には

次に示すオペランドの追加はできます。

  • pd_syssts_file_name_1〜7

  • pd_sts_file_name_1〜7

しかし,これらのオペランドの削除,指定値の変更はできません。削除又は変更した場合,該当ユニットの再開始は失敗します。

(7) シンクポイントダンプファイルの追加,削除,変更,初期化はできません

HiRDBが計画停止,強制終了,異常終了したときには,次の表に示すシンクポイントダンプファイルの操作ができません。

表1‒12 計画停止,強制終了,異常終了したときにできないシンクポイントダンプファイルの操作

シンクポイントダンプファイルの操作

正常終了

計画停止,強制終了,異常終了

シンクポイントダンプファイルの追加

×

シンクポイントダンプファイルの削除

×

シンクポイントダンプファイルの変更

×

シンクポイントダンプファイルの初期化

×

(凡例)

○:操作できます。

×:操作できません。実行すると再開始できなくなります。

●計画停止,強制停止,異常終了後には

次に示すオペランドの追加,削除,指定値の変更はできません。

  • pdlogadfg -d spd

  • pdlogadpf -d spd

誤って追加,削除,指定値を変更した場合,該当ユニットの再開始は失敗します。

なお,前回のHiRDB稼働中に追加したシンクポイントダンプファイルは再開始後のHiRDBにも引き継がれます。

(8) システムログファイルの削除,変更はできません

HiRDBが計画停止,強制終了,異常終了したときには,次の表に示すシステムログファイルの操作ができません。

表1‒13 計画停止,強制終了,異常終了したときにできないシステムログファイルの操作

システムログファイルの操作

正常終了

計画停止,強制終了,異常終了

システムログファイルの追加

システムログファイルの削除

×

システムログファイルの変更

×

システムログファイルの初期化

(凡例)

○:操作できます。

×:操作できません。実行すると再開始できなくなります。

注※

次に示すシステムログファイルは初期化しないでください。誤って初期化すると,該当ユニットの再開始が失敗するか,再開始に成功してもデータベースの内容が不正になります。

  • 前回のHiRDB稼働中,最後に使用したシステムログファイル

  • 上書き禁止状態のシステムログファイル

●計画停止,強制停止,異常終了後には

次に示すオペランドの追加はできます。

  • pdlogadfg -d sys

  • pdlogadpf -d sys

しかし,これらのオペランドの削除,指定値の変更はできません。削除又は変更した場合,該当ユニットの再開始は失敗します。

(9) 現用のシステムログファイルのスワップについて

HiRDBが再開始するときに,現用のシステムログファイルがスワップするかどうかは,pd_log_rerun_swapオペランドの指定によります。現用のシステムログファイルがスワップする条件を次の表に示します。

表1‒14 現用のシステムログファイルがスワップする条件

pd_log_rerun_swapオペランドの指定

正常終了,計画停止

強制終了,異常終了

pd_log_rerun_swap=Y

pd_log_rerun_swap=N

×

pd_log_rerun_swapオペランドを省略

×

(凡例)
○:

HiRDBの再開始時に現用のシステムログファイルをスワップします。前回終了時の現用ファイルをスワップさせ,新たな現用ファイルを割り当てます。

×:

HiRDBの再開始時に現用のシステムログファイルをスワップしません。前回終了時の現用ファイルをそのまま現用として使用します。ただし,次に示す場合は,HiRDBの再開始時に現用のシステムログファイルをスワップします。

  • 前回終了時の現用ファイルに障害が発生した場合

  • HiRDBの停止中にアンロードをした(pdlogunld又はpdlogchgコマンドを実行した)場合

(10) 再開始するときのシステムログファイルの入力障害について

HiRDBを再開始するとき,HiRDBは前回稼働中の最後に有効化したシンクポイント時点をシステムログの入力開始時点とします。そして,最新のシステムログまでを順次入力してデータベース及びトランザクションを回復します。このとき,入力対象となったシステムログファイルのうち,一つ以上のシステムログファイルを障害によって失うと(システムログを二重化している場合はA,Bの両系とも失うと),再開始に失敗するか,又は再開始に成功してもデータベースの内容が不正になってしまいます。

この場合,失われたシステムログファイルのアンロードログファイルを取得していれば,バックアップ及びアンロードログファイルを入力情報にしてデータベース回復ユティリティでデータベースを回復できます。しかし,アンロードログファイルがない場合には,システムログを使用した回復はできません。データベースのバックアップ取得時点の状態に回復し,その後の業務を再実行して回復するか,又はデータベースを再作成する必要があります。

(11) 計画停止後の再開始での注意事項

HiRDBを再開始するとき,前回のHiRDB稼働中の最後に有効化したシンクポイント時点をシステムログの入力開始位置とします。この最後に有効化したシンクポイントダンプファイル,及びステータスファイルに障害が発生すると,HiRDB再開始時のシステムログの入力開始位置がもう一つ前に有効化したシンクポイント時点まで戻ってしまうことがあります。システムログ入力開始位置が戻ってしまう例を次の図に示します。

図1‒1 システムログ入力開始位置が戻ってしまう例

[図データ]

〔説明〕

このようにして決定したシステムログ入力開始位置から,最新のシステムログファイルまでの間に計画停止をした場合には,次の点に注意してください。

  • 計画停止後の再開始前に,HiRDBシステム定義を変更すると,再開始に失敗します。この場合,この後にHiRDBシステム定義の内容を計画停止前の内容に戻しても,再開始に失敗します。

このような場合は,ユニットを強制的に正常開始した後に,データベースのバックアップ及びアンロードログファイルからデータベース回復ユティリティを実行して回復する必要があります。

(12) 強制終了するとユニットが異常終了することがあります

HiRDBを強制終了(pdstop -fコマンド)すると,アボートコードPolkcrtでHiRDBのユニットが異常終了することがあります。

これは,強制終了処理でクリティカル状態のプロセスを終了するためです。運用上の問題はありません。この現象を無視してください。強制終了処理では,クリティカル状態のサーバプロセスであっても即時停止します。そのため,この現象が発生することはありますが,次回のpdstartコマンド入力で再開始(システムログからデータベースを回復)するため問題ありません。