技術要素 - 9.データベース - 4.トランザクション処理 - 2.障害回復

Last Update : January 02 2021 16:00:25

     

a. 障害回復

「障害回復」とは、データベースのデータが「トランザクション障害」「システム障害」「媒体障害」などにより、障害が発生しても、データベースを健全な状態に戻すための処理を言います。具体的には、以下の2種類があります。

ロールバック処理
論理的障害に対する対処法です。更新処理中に異常が発生した場合、「ログファイル」の「更新前情報」を用いてデータベースを書き戻し、その処理自体が存在しなかったことにする方式です。 トランザクション処理において、処理の途中で何らかの障害が発生したとき、データの整合性がとれなくなる。トランザクション処理の途中で障害が発生したときは、ジャーナルファイルを用いてトランザクション処理開始時点の状態に戻してデータの整合性を保つ処理がロールバックである。

ロールフォワード処理
物理的障害に対する対処法です。データベースで使用しているハードディスクが破損した場合に、バックアップファイルをコピーすることで最終のバックアップ時点までデータベースを復元出来ます。それ以降は、「ログファイル」の「更新後情報」を順次読み込んで障害前の状態に戻します。 ロールフォワードの流れは以下のとおりである。

  1. 障害が発生したディスクを新しいディスクに交換する
  2. ディスクにバックアップデータを書き戻す
  3. 更新後ジャーナルファイルを用いてバックアップファイル以降に更新されたデータを更新する

チェックポイント
チェックポイントでは、定期的にログ情報とデータベースの内容のすべてをチェックポイントファイルに完全に記録する。

ウォームスタート
データベースに障害が発生したときに、チェックポイントまで一旦もどり、更新情報のログを利用して、ロールバック・ロールフォワード、及び再処理を行い、データベースを回復する処理

コールドスタート
データベースに障害が発生したとき、一度電源を切り、メモリの内容などを完全にクリアしてから再起動する方式で、チェックポイントでのログなどは使用せず、システムを初期状態に戻しバックアップを用いて復元を行い、その後トランザクションの再処理を行う。


  [ 例題 ] 
  1. 平成30年度春期 問29  ログファイル
  2. 平成30年度秋期 問30  障害回復
  3. 平成28年度秋期 問30  データベース
  4. 平成23年度春期 問33  ログファイル
  5. 平成23年度春期 問35  DBMS
  6. 平成23年度秋期 問36  データベース回復
  7. 平成22年度秋期 問56  ロールバック
  8. 平成21年度春期 問35  データベース
  9. 平成21年度秋期 問34  データベース復旧
  10. 平成20年度春期 問60  回復処理


     

www.it-shikaku.jp