インメモリデータ処理中に障害が発生した場合,インメモリデータバッファの状態とRDエリアの状態を確認する必要があります。
インメモリデータ処理中の障害には,次の3種類があります。
- RDエリア障害
- RDエリアに障害が発生している状態です。
- RDエリアの障害を取り除いたあと,インメモリデータバッファ上のデータをRDエリアに書き込むことで回復できます。インメモリデータバッファ上のデータは最新であるため,RDエリアも最新の状態に回復できます。
- バッファ障害
- インメモリデータバッファに障害が発生している状態です。
- 最新の状態に回復する場合は,いったんインメモリ化を解除してから,アンロードログファイルを使ってpdrstrコマンドでRDエリアを最新の状態に回復し,再度インメモリ化します。または,インメモリ化したままアンロードログファイルを使ってpdrstrコマンドでRDエリアを最新の状態に回復し,その内容をインメモリデータバッファに再読み込みします。
- 同期取得時点に回復する場合は,いったんインメモリ化を解除してから,RDエリアを再度インメモリ化します。または,RDエリアの内容をインメモリデータバッファに再読み込みします。
- RDエリア障害かつバッファ障害
- インメモリデータバッファとRDエリアの両方に障害が発生している状態です。
- 最新の状態に回復する場合は,バックアップファイルとアンロードログファイルを使ってpdrstrコマンドでRDエリアを最新の状態に回復し,その内容を再度インメモリ化します。
- 同期取得時点に回復する場合は,バックアップファイルを使ってpdrstrコマンドでRDエリアを同期取得時点に回復し,その内容を再度インメモリ化します。
これらの障害状態については,pddbls -Mコマンドで確認できます。詳細については,「5.2 障害が発生したときに最初に確認すること」を参照してください。
- ポイント
- バッファ障害で,かつRDエリアが障害閉塞クローズ状態のときだけ,データベース回復ユティリティ(pdrstr)を実行できます。RDエリア障害が発生している場合(RDエリア障害かつバッファ障害を含む)は,一度インメモリ化を解除してから回復する必要があります。