1.2.4 OSシャットダウン時にHiRDBを終了する方法
HiRDBの稼働中にOSをシャットダウンした場合,HiRDBが強制終了されます。そのため,OSをシャットダウンする前にHiRDBを終了してください。
- 〈この項の構成〉
(1) OSシャットダウン時にHiRDBを終了させる
ユーザ運用で自動的にHiRDBを終了する例として,OSのrcスクリプト機能を使用してHiRDBを終了する手順を示します。HiRDBを正常終了させる場合,特定の条件を満たしている必要があります(HiRDB/パラレルサーバではrcスクリプト機能は使用しないで,ほかのユーザ運用手段で正常終了してください)。
- 正常終了させる場合の条件
-
正常終了させる場合は,次の条件を満たしている必要があります。
-
HiRDBに接続しているユーザがいない
-
未決着のトランザクションがない
-
HiRDB/パラレルサーバの場合,システムマネジャがあるユニット以外のユニットが強制終了又は異常終了していない
-
- rcスクリプトの作成,登録の手順
-
次の内容のrcスクリプトを作成し,登録します。スクリプトの登録方法についてはOSのマニュアルを参照してください。
- <rcスクリプトの内容>
-
次の手順を実行するrcスクリプトを作成してください。
-
HiRDBに接続しているすべてのクライアントを終了してください。
-
pdstopコマンドでHiRDBを正常終了してください。
-
2で正常終了に失敗した場合(リターンコードが0以外の場合),HiRDBが終了していないおそれがあるため,pdstop -fコマンドでHiRDBを強制終了してください。
-
- <rcスクリプトの登録場所>
-
HiRDBは,OSシャットダウン時にHiRDBが稼働中であれば,次のrcスクリプトでHiRDBを強制終了する処理をします。そのため,HiRDBを正常終了するrcスクリプトを登録する場合は,HiRDBが使用するrcスクリプトよりも前に実行するように,rcスクリプトを登録してください。強制終了後に実行されるように登録するとHiRDBが強制終了済みとなるため,正常終了処理がエラーになるおそれがあります(AIXは,OSシャットダウンで強制終了されてもデータベースが破壊されないため,強制終了しません)。
プラットフォーム
HiRDBが強制終了のために使用するrcスクリプトの登録場所
Linux
/etc/rc0.d/K09HiRDB_x
/etc/rc1.d/K09HiRDB_x
/etc/rc6.d/K09HiRDB_x
AIX
なし