障害の種類(トランザクション障害・システム障害・媒体障害)とは?しょうがいのしゅるいとらんざくしょんしょうがいしすてむしょうがいばいたいしょうがい
障害の種類(トランザクション障害・システム障害・媒体障害)とは、回復手段を選ぶために区分する、データベース障害の3類型。処理単位が異常終了する場合、DBMS(データベース管理システム)そのものが停止する場合、記録媒体が壊れて内容が失われる場合で、使う道具がログ・チェックポイント・バックアップと変わる。
最終更新:2026-10-07
この語が出る過去問を解く →背景
データベースはコミットした更新を必ず残し、途中で終わった更新は必ず消さなければならない。だが停止の仕方によって、主記憶だけが失われたのか、ディスク上の実体まで失われたのかが異なる。何が残っているかで打つ手が決まるため、障害をこの3つに分けてから回復手順を組み立てる。
具体例
更新中のプログラムが例外で落ちたら、そのトランザクションだけをログで打ち消す。停電から再起動したら、直近のチェックポイント以降をログでやり直し、未完了分を取り消す。ディスクが故障したら、バックアップを戻したうえで以降のログを適用する。Oracle Database の REDO ログ、PostgreSQL の WAL がこのログにあたる。
試験での引っ掛け
停止したから媒体障害、と読まないこと。DBMS が落ちてもディスクは無事なので復元は不要で、必要なのは主記憶に残っていた更新のやり直しと未完了処理の取消しだけ。逆に媒体障害では、バックアップを戻さずログだけ当てても復旧しない。
関連用語
出た過去問
出典:平成28年度 春期 高度試験 午前Ⅰ 問10(IPA)
媒体障害の回復において,最新のデータベースのバックアップをリストアした後に,トランザクションログを用いて行う操作はどれか。
正解:バックアップ取得後にコミットした全てのトランザクションをロールフォワードする。
要点:媒体障害はリストア+ロールフォワードで復旧する
媒体障害ではディスク上のデータが失われるため、まずバックアップをリストアして過去の状態に戻す。その時点以降にコミット済みのトランザクションの更新は失われているので、ログの更新後情報を使って再適用(ロールフォワード)して最新状態まで進める。未コミットのものは再現する必要がないので対象外である。
出典:令和元年度 秋期 高度試験 午前Ⅰ 問9(IPA)
データベースに媒体障害が発生したときのデータベースの回復法はどれか。
正解:バックアップコピーでデータベースを復元し、バックアップ取得以降にコミットした全てのトランザクションをロールフォワードする。
要点:媒体障害はバックアップ復元+ロールフォワードで回復する
媒体障害はディスクなどの記憶媒体そのものが壊れ、データベースの内容が失われる障害である。この場合はログだけでは復旧できないので、まずバックアップから障害直前の状態のデータベースを復元し、そのバックアップ取得以降にコミットされたトランザクションをログを使ってロールフォワード(前進復帰)することで回復する。
出典:令和3年度 秋期 高度試験 午前Ⅰ 問9(IPA)
データベースの障害回復処理に関する記述として、適切なものはどれか。
正解:システムが媒体障害以外のハードウェア障害によって停止した場合、チェックポイントの取得以前に終了したトランザクションについての回復作業は不要である。
要点:チェックポイント以前に完了した更新は回復不要
チェックポイント時点で既にコミットして終了しているトランザクションの更新内容は、その時点でデータベースに反映済みである。したがって媒体障害以外の障害でシステムが停止しても、それらについてロールフォワードなどの回復作業は不要となる。回復対象はチェックポイント以降に更新した、コミット済み(ロールフォワード)または未完了(ロールバック)のトランザクションである。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。