
今回のテーマは、データベースの障害管理についてです。
難しそうなテーマですね。

基本情報技術者試験や応用情報技術者試験で出題される「データベースの障害管理(ロールフォワード)」の問題。ロールフォワードの動きを知らないと難しく感じる問題ですが、知っていればそこまで難しい問題ではありません。
本記事では、データベースの障害管理(ロールフォワード)について解説しています。
スポンサーリンク
目次
ロールフォワード
ロールフォワードとは、 データベースに障害が発生したときの回復手段のひとつです。
データベースには、業務で必要なデータが大量に保存されています。そのため、障害に備えて定期的にバックアップを取ることが基本です。
もしバックアップがない状態で、データベースが破損したら、データを復元できません。

データが復元できないと大問題だ...
ロールフォワードでは、「バックアップファイル」と「ジャーナルファイル」というファイルを使い、データベースの状態を元に戻します。
バックアップファイルとジャーナルファイル
データベースは、障害に備えて定期的に バックアップを取ることが基本です。
定期的に取得するバックアップは、 データベースの内容を丸ごと別ファイル(バックアップファイル)に保存します。
バックアップファイルを定期的に取得していれば、障害発生時にデータベースのデータを復元できます。
ただし、 バックアップファイルだけでは不十分です。なぜなら、バックアップファイルを取得してから、次のバックアップファイルを取得するまでの間に更新されたデータがあるからです。
そこで、バックアップ後の更新はジャーナルファイル(更新前の状態と更新後の状態)と呼ばれるログファイルに随時記録して、 データベースのテーブルに対する更新履歴を管理します。
次の図は、バックアップアイルとジャーナルファイルのイメージ例です。

- データベースの内容は、定期的にバックアップファイルに保存する
- 次のバックアップファイル取得までの間に、発生した更新は、ジャーナルファイル(ログ)に保存する
ロールフォワードの流れ
ロールフォワードは、データベースに障害が発生したときの回復手段のひとつです。 バックアップファイルとジャーナルファイルを使い、データベースの状態を元に戻します。
ロールフォワードの流れは次のとおりです。
- データベースに障害が発生
- バックアップファイルからデータを復旧
- バックアップファイル以降のログ(ジャーナルファイル)を反映

データベースで障害が発生した場合、定期的に取得している バックアップファイルからデータを復旧します。ただし、それだけではバックアップ以降に加えられた変更分が失われたままです。
そこで、バックアップ以降のログ(ジャーナルファイル)を反映し、障害発生直前の状態に戻します。
このように「バックアップファイル」+「ジャーナルファイル」を使い、データベースの内容を障害発生直前の状態に戻すことをロールフォワードといいます。
スポンサーリンク
情報処理試験 過去問の解説
基本情報技術者平成30年秋期 午前問30
データベースが格納されている記憶媒体に故障が発生した場合,バックアップファイルとログを用いてデータベースを回復する操作はどれか、ア~エを順番に確認していきます。

「エ」が正解です。
応用情報技術者令和4年秋期 午前問29
チェックポイントを取得するDBMSは、システム障害から復旧すると、チェックポイント時点のデータにもどります。
T1~T5はトランザクションで管理されている処理です。トランザクションとは、一連の処理をひとまとめにしたもので、処理をすべて確定(コミット)させるか、処理をすべて取り消す(ロールバック)かのどちらかで、中途半端に一部だけ実行することは許容しません。
前進復帰(ロールフォワード)によって障害回復できるトランザクションはどれか、T1~T5を順番に確認していきます。
- T1:チェックポイント前にコミット(確定)されているので、システム障害から復旧したDBMSにコミット内容は反映されています。そのため、ロールフォワードする必要はありません。
- T2:トランザクション処理中にシステム障害が発生。トランザクションは、コミット(すべて確定)するか、ロールバック(すべて取り消す)かのどちらかで、処理中に障害が発生した場合は、ロークバック(すべて取り消す)します。ロールバックによって、処理はすべて取り消しになるので、ロールフォワードする必要はありません。
- T3:T2と同じ
- T4:チェックポイント ~ システム障害発生の間にトランザクションがコミットされています。システム障害から復旧すると、DBMSはチェックポイント時点のデータにもどります。そのため、ロールフォワードを行い、DBMSにコミット内容を反映します。
- T5:T4と同じ

ロールフォワードが必要なのは、T4とT5です。「ウ」が正解です。
基本情報技術者試験おすすめの参考書・問題集
いちばんやさしい 基本情報技術者 | 『基本情報技術者試験』試験に、短期間で一発合格するための試験対策本。ITの知識がまったくない、未経験者やでもスラスラと学習を進められるよう、丁寧に解説。 |
かやのき先生の基本情報技術者教室 | 基本情報技術者をめざす方のためのやさしいオールインワンタイプの参考書&問題集。イラストや豊富な図解・例え話を駆使して理解しやすく・記憶に残りやすいように説明。 |
基本情報技術者 パーフェクトラーニング過去問題集 | 科目A・Bともに万全の対策ができる、定番の過去問題集!科目A・科目Bの両方について万全の対策ができる。 |
キタミ式イラストIT塾 基本情報技術者 | すべての解説をイラストベースで行っているため,とてもわかりやすい解説本。いちばん最初に読む基本情報技術者試験関連の書籍を探している人におすすめ! |
出るとこだけ!基本情報技術者[科目B] | 基本情報技術者【科目B】対策の定番書!前提知識+解き方+試験問題を掲載。効率よく学習できる。 |
基本情報技術者 合格教本 | 出題範囲を体系的にきちんと理解しながら学習したい人におすすめ!基本情報技術者試験の定番テキストの改訂版。 |
基本情報技術者 超効率の教科書+よく出る問題集 | 動画でスムーズに学習スタート、テキストでしっかり理解度を深める!よく出る問題を反復学習することで、合格に直結するチカラが身に付く! |