24.5.3 監査証跡表の自動データロード機能を適用した場合の運用
- 〈この項の構成〉
(1) 監査証跡表の参照
監査証跡表の自動データロード機能を適用すると,pdloadコマンドがデータロード中でもNOWAIT検索で監査証跡表が参照できます※。監査証跡表を参照するときは,SQLの排他オプションにWITHOUT LOCK NOWAITを指定してください。SQLの排他オプションを指定しないで監査証跡表を参照した場合,pdloadコマンドの実行中に監査証跡表にアクセスしようとしたSQLが排他解除待ちになることや,SQLで検索中の監査証跡表にデータロードしようとしたpdloadコマンドが排他解除待ちタイムアウトになることがあり,pdloadコマンドが異常終了するおそれがあります。
自動データロード機能では,排他解除待ちタイムアウトのようなリトライ可能なエラーが発生した場合,再度データロードを行いますが,エラーが繰り返し発生した場合は機能を停止します。この場合,自動データロード機能を手動で再開始する必要があります。エラーの内容に応じた対処方法については,表「自動データロード実行中の障害内容と対処方法」を参照してください。
- 注※
-
pdaudloadコマンドでインデクス一括作成モード,又はローカルバッファを使用したデータロードを実行している場合は,NOWAIT検索による監査証跡表の参照はできません。検索方法による監査証跡表の参照可否を,次の表に示します。
検索方法
データロード中でない場合
データロード中の場合
pdloadコマンドが使用するバッファ
pdloadコマンドのインデクス作成方法
グローバル
ローカル
同時作成
一括作成
NOWAIT検索
○
○
×
○
×
上記以外の検索
○
×
×
×
×
- (凡例)
-
○:監査証跡表を参照できます。
×:監査証跡表を参照できません(データロードが完了するまで,排他解除待ちとなります)。
(2) 自動データロード機能の開始及び停止のタイミング
監査証跡表の自動データロード機能を適用した場合の,機能の開始及び停止のタイミングを次に示します。
-
開始タイミング
-
HiRDBを開始(pdstartコマンドを実行)した時
-
pdaudatldコマンド(-bオプション指定)を実行して機能を再開始した時
-
HiRDBを再開始した時
自動データロード機能の開始時に,データロード待ち状態の監査証跡ファイルをデータロードします。
-
-
停止タイミング
-
HiRDBを停止(pdstopコマンドを実行)した時
-
pdaudatldコマンド(-tオプション指定)を実行して機能を停止した時
pdstopコマンド又はpdaudatldコマンドを受け付けた時点でデータロードの対象となる監査証跡ファイルがある場合は,それらをすべてデータロードした後に機能を停止します。コマンドを受け付けた後に監査証跡ファイルのスワップが発生した場合は,次回pdstartコマンド又はpdaudatldコマンドを実行した時にデータロードを実行します。
-
次の場合,自動データロード機能は即時に停止します。データロードされなかった監査証跡ファイルは,次回pdstartコマンド又はpdaudatldコマンドを実行した時にデータロードを実行します。
-
監査証跡表へのデータロード中にリトライできない障害が発生した時
-
HiRDBが異常終了(pdloadコマンドを実行しているユニットがダウン※)した時
-
HiRDBを強制終了(pdstop -fコマンドを実行)した時
pdaudatldコマンドは,監査証跡表の自動データロード機能の再開始と停止を制御するコマンドです。詳細については,マニュアル「HiRDB コマンドリファレンス」を参照してください。
- 注※
-
システムマネジャがあるユニットがダウンした場合は,HiRDBの再開始時に自動データロード機能を開始します。なお,pdloadを実行していないユニットがダウンしても,自動データロード機能は停止しません。
障害発生時の運用については,「自動データロード機能適用中に障害が発生したときの対処方法」を参照してください。
(3) 自動データロード機能の一時停止を利用した運用例
監査人は,pdaudatldコマンドで自動データロード機能を任意の時点で一時停止できます。ここでは運用例として,自動データロード機能を一時停止し,機能を停止した時点又は一日の業務終了時点での監査証跡表の内容をアンロードログファイルに退避し,バックアップを取得する方法について説明します。
-
機能を停止した時点でのバックアップを取得する場合は,手順1,5,6,7の操作を行ってください。この方法は,一定時間ごとの監査証跡表の状態をバックアップする運用を前提としているため,現用の監査証跡ファイルの内容はバックアップの対象にはなりません。
-
一日の業務終了時点でのバックアップを取得する場合は,手順1〜7の操作を行ってください。この方法は,一日の業務で記録されたすべての監査証跡をバックアップする運用を前提としているため,現用の監査証跡ファイルの内容も監査証跡表にデータロードします。
- 〈手順〉
〈説明〉
-
pdaudatld -tコマンドを実行して,自動データロード機能を停止します。これによって,次に機能を再開始するまでの間(図中の(a)で示す期間)は,監査証跡表へのデータロードは発生しません。なお,データロード中にpdaudatld -tコマンドを実行した場合は,データロードがすべて完了してから機能を停止します。
機能が正常に停止すると,pdaudatld -tコマンド実行までにデータロード待ち状態となった監査証跡ファイルの内容は,すべて監査証跡表にデータロードされた状態になります。
-
pdls -d audコマンドを実行して,1.で機能を停止した後にデータロード待ち状態になった監査証跡ファイルや,現用の監査証跡ファイルを確認します。
-
pdaudswapコマンドを実行して現用の監査証跡ファイルをスワップし,データロード待ち状態にします。
-
pdloadコマンドを実行して,データロード待ち状態となっている監査証跡ファイルを監査証跡表にデータロードします。
-
pdrorgコマンドを実行して,この時点の監査証跡表の内容をアンロードデータファイルに出力します。
-
監査証跡表の内容は,アンロードデータファイルに出力されたため不要になります。容量不足による自動データロード機能の停止を防ぐために,監査証跡表のデータを削除します。
-
pdaudatld -bコマンドを実行して,自動データロード機能を再開始します。
(4) 自動データロード機能を適用した場合のHiRDBの停止処理
監査証跡表の自動データロード機能を適用している場合,HiRDBの停止処理の動作が変わることがあります。停止処理ごとのHiRDBの動作内容と,対処方法を次の表に示します。
停止処理の種類 |
自動データロードの 実行状態 |
HiRDBの動作 |
対処方法 |
||
---|---|---|---|---|---|
停止処理 |
自動データロード機能の動作状態※1 |
||||
システム正常停止(pdstop実行) 又は システム計画停止(pdstop -P実行) |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
|
実行中 |
|
|
|||
システム強制停止(pdstop -f実行) |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
|
実行中 |
|
||||
非MGRユニット正常停止(pdstop -u又は-x)※4 |
監査証跡表のあるユニット,又は自動データロード中の監査証跡ファイルのあるユニット |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
実行中 |
ユニットは正常停止しません。KFPS05070-E又はKFPS05234-Eメッセージを表示し,pdstopコマンドはエラー終了します。 |
該当するユニットを正常停止する場合は,pdaudatld -tコマンドで自動データロード機能を停止させた後,pdstop -u/-xコマンドを実行してください。 |
|||
上記以外のユニット |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
|
実行中 |
|||||
非MGRユニット強制停止(pdstop -z又は-z -q) 異常終了 ※2※4 |
監査証跡表のあるユニット,又は自動データロード中の監査証跡ファイルのあるユニット |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
実行中 |
|
自動データロード機能を再開始する場合は,pdaudatld -bコマンドを実行してください。 |
|||
上記以外のユニット |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
|
実行中 |
|||||
MGRユニット強制停止(pdstop -z又は-z -q) 異常終了 ※2※4 |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
MGRユニットを再開始した後も,動作状態は「ENABLE」を保ちます。 |
− |
|
実行中 |
|
||||
サーバ正常停止(pdstop -s又は-u -s)※4 |
監査証跡表のあるサーバ |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
実行中 |
サーバは正常停止しません。KFPS05071-E又はKFPS05235-Eメッセージを表示し,pdstopコマンドはエラー終了します。 |
該当するサーバを正常停止する場合は,pdaudatld -tコマンドで自動データロード機能を停止させた後,pdstop -s/-u -sコマンドを実行してください。 |
|||
上記以外のサーバ |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
|
実行中 |
|||||
サーバ強制停止(pdstop -s -f,-s -z又は-u -s -z)※3※4 |
監査証跡表のあるサーバ |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
実行中 |
|
自動データロード機能を再開始する場合は,pdaudatld -bコマンドを実行してください。 |
|||
上記以外のサーバ |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
|
実行中 |
|||||
HiRDBサービス停止指示 |
未実行 |
自動データロード機能を適用していない場合と動作は同じです。 |
「ENABLE」を保ちます。 |
− |
|
実行中 |
|
|
- (凡例)
-
−:特にありません。
MGRユニット:システムマネジャがあるユニット
非MGRユニット:システムマネジャがないユニット
- 注※1
-
pdaudatld -iコマンドで表示される,次の状態を示します。
ENABLE:有効
DISABLE(WAIT):停止処理中
DISABLE:停止
- 注※2
-
系切り替えが契機のユニット強制停止を含みます。
- 注※3
-
影響分散スタンバイレス型系切り替えによるサーバ強制停止を含みます。
- 注※4
-
HiRDB/パラレルサーバの場合だけ該当します。
(5) データロード中に自動データロード機能を停止した場合のHiRDBの動作
監査証跡表の自動データロード機能を適用している場合,pdaudatld -tコマンドで機能を停止できますが,自動データロードの実行状態によって,機能を停止するタイミングが変わります。自動データロード機能を停止した場合のHiRDBの動作を,次の表に示します。
自動データロードの 実行状態 |
HiRDBの動作 |
|
---|---|---|
pdaudatld -tコマンド実行時の動作 |
自動データロードの動作 |
|
未実行 |
|
− |
実行中 |
|
|
- (凡例)
-
−:特にありません。
(6) データロード完了を待ち合わせている状態で,データロードがエラー終了した場合のHiRDBの動作
(4)及び(5)で,ほかのコマンド(pdstop及びpdaudatld -t)が監査証跡表へのデータロード完了を待ち合わせている場合があります。データロードが完了するとコマンドの実行を再開しますが,データロードがエラー終了した場合は,データロードを待ち合わせないでコマンドの実行を再開します。このときのHiRDBの動作を次の表に示します。
監査証跡表への データロード完了を 待ち合わせている コマンド |
データロードの終了状態 |
|
---|---|---|
正常終了した場合 |
エラー終了した場合 |
|
pdstop |
|
|
pdaudatld -t |
|
|
(7) 注意事項
(a) 監査証跡表の容量不足に注意してください
監査証跡表の自動データロード機能を適用することで,監査証跡ファイルの管理は不要となります(入出力エラーが発生した場合を除きます)が,監査証跡表を格納するRDエリアの容量が不足しないように注意する必要があります。
監査証跡ファイルに監査証跡が記録される限り,データロードは自動的に続くため,監査証跡表を格納するRDエリアの容量が不足するとデータロードができなくなり,自動データロード機能が停止します。
自動データロード機能が停止した場合は,不要なデータを削除,又はRDエリアを拡張した後に,自動データロード機能を再開始する必要があります。対処方法については,表「自動データロード実行中の障害内容と対処方法」を参照してください。
(b) pd_lck_wait_timeoutオペランドに0を指定している場合
監査証跡ファイルをデータロードしている途中で別の監査証跡ファイルがスワップした場合,先行の監査証跡ファイルの処理が完了するまでは排他待ち状態となり,データロードできません。
先行するデータロード処理に障害が発生した場合など,排他待ち状態が長時間に及ぶと,データロード待ちの監査証跡ファイルが増えるおそれがあります。pd_lck_wait_timeoutオペランドの値を0としている場合は,排他待ち状態が解除されるまで待ち続けるため,pdaudatldコマンドで監査証跡ファイルの状態を随時監視するようにしてください。
(c) 自動データロードの実行ユーザについて
HiRDBが監査証跡ファイルをデータロードする場合,pdloadコマンドでは実行ユーザの権限チェックをしないため,権限チェック時の監査記録は出力しません。また,イベント終了時の監査記録に出力されるユーザ識別子の長さは0バイトです。