スケーラブルデータベースサーバ HiRDB Version 8 システム運用ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

1.2.4 OSシャットダウン時にHiRDBを終了する方法

HiRDBの稼働中にOSがシャットダウンすると,タイミングによってはデータベースが破壊される可能性があります。ここでは,OSがシャットダウンしたときに,HiRDBをどのように終了させるかの設定方法について説明します。なお,AIX版のHiRDBの場合は,OSがシャットダウンしてもデータベースが破壊される可能性はありません。

OSシャットダウン時のHiRDBの終了方法には2とおりあり,pdsetupコマンドで設定します。通常は,OSシャットダウン時にHiRDBを明示的に強制終了させる設定にしてください。

<この項の構成>
(1) OSシャットダウン時にHiRDBを明示的に強制終了させる
(2) OSシャットダウン時にHiRDBを正常終了させる,又はOSの強制終了に依存させる

(1) OSシャットダウン時にHiRDBを明示的に強制終了させる

OSシャットダウン時にHiRDBを明示的に強制終了させる場合は,次のようにpdsetupコマンドを実行してください。

pdsetup -k on HiRDB運用ディレクトリ名

(2) OSシャットダウン時にHiRDBを正常終了させる,又はOSの強制終了に依存させる

OSシャットダウン時にHiRDBを正常終了させる,又はOSの強制終了に依存させる場合は,次のようにpdsetupコマンドを実行してください。

pdsetup -k off HiRDB運用ディレクトリ名
(a) OSシャットダウン時にHiRDBを正常終了させる場合

HiRDBを正常終了させる場合,特定の条件を満たしている必要があります。また,rcスクリプトを作成し,登録しておく必要があります。

正常終了させる場合の条件
正常終了させる場合は,次の条件を満たしている必要があります。
  • HiRDBに接続しているユーザがいない
  • 未決着のトランザクションがない
  • HiRDB/パラレルサーバの場合,システムマネジャがあるユニット以外のユニットが強制終了又は異常終了していない

rcスクリプトの作成,登録
次の内容のrcスクリプトを作成し,登録します。
<rcスクリプトの内容>
次の手順を実行するrcスクリプトを作成してください。
  1. HiRDBに接続しているすべてのクライアントを終了してください。
  2. pdstopコマンドでHiRDBを正常終了してください。
  3. 2で正常終了に失敗した場合(リターンコードが0以外の場合),pdstop -fコマンドでHiRDBを強制終了してください。
<rcスクリプトの登録場所>
作成したrcスクリプトは,次の場所に登録してください。
プラットフォーム 登録場所
HP-UX /sbin/init.d/xxxx
/sbin/rc1.d/Kyyyxxxx
(sbin/init.d/xxxxのシンボリックリンク)
Solaris /etc/init.d/xxxx
/etc/rc0.d/Kyyyxxxx
/etc/rc1.d/Kyyyxxxx
(etc/init.d/xxxxのシンボリックリンク)
Linux /etc/init.d/xxxx
/etc/rc0.d/Kyyyxxxx
/etc/rc1.d/Kyyyxxxx
/etc/rc6.d/Kyyyxxxx
(etc/init.d/xxxxのシンボリックリンク)
(凡例)
xxxx:
任意の名称です。
Kyyyxxxx:
Kは終了時に動作するスクリプトを表しています。yyyは000〜999の数値で,rcスクリプトはこの値の昇順に実行されます。xxxxは任意の名称です。
(b) OSシャットダウン時にOSの強制終了に依存させる場合

OSの強制終了に依存させる場合,タイミングによってはデータベースが破壊される可能性があります。そのため,通常時は,OSシャットダウン時にHiRDBを明示的に強制終了させるようにしてください。