「障害回復」とは、データベースのデータが「トランザクション障害」「システム障害」「媒体障害」などにより、障害が発生しても、データベースを健全な状態に戻すための処理を言います。具体的には、以下の2種類があります。
【 ロールバック処理 】
論理的障害に対する対処法です。更新処理中に異常が発生した場合、「ログファイル」の「更新前情報」を用いてデータベースを書き戻し、その処理自体が存在しなかったことにする方式です。
トランザクション処理において、処理の途中で何らかの障害が発生したとき、データの整合性がとれなくなる。トランザクション処理の途中で障害が発生したときは、ジャーナルファイルを用いてトランザクション処理開始時点の状態に戻してデータの整合性を保つ処理がロールバックである。
【 ロールフォワード処理 】
物理的障害に対する対処法です。データベースで使用しているハードディスクが破損した場合に、バックアップファイルをコピーすることで最終のバックアップ時点までデータベースを復元出来ます。それ以降は、「ログファイル」の「更新後情報」を順次読み込んで障害前の状態に戻します。
ロールフォワードの流れは以下のとおりである。
【 チェックポイント 】
チェックポイントでは、定期的にログ情報とデータベースの内容のすべてをチェックポイントファイルに完全に記録する。
【 ウォームスタート 】
データベースに障害が発生したときに、チェックポイントまで一旦もどり、更新情報のログを利用して、ロールバック・ロールフォワード、及び再処理を行い、データベースを回復する処理
【 コールドスタート 】
データベースに障害が発生したとき、一度電源を切り、メモリの内容などを完全にクリアしてから再起動する方式で、チェックポイントでのログなどは使用せず、システムを初期状態に戻しバックアップを用いて復元を行い、その後トランザクションの再処理を行う。
www.it-shikaku.jp