応用情報技術者 2019年 秋期 午前2 問29
問題文
データベースに媒体障害が発生したときのデータベースの回復法はどれか。
選択肢
ア:障害発生時、 異常終了したトランザクションをロールバックする。
イ:障害発生時点でコミットしていたがデータベースの実更新がされていないトランザクションをロールフォワードする。
ウ:障害発生時点でまだコミットもアボートもしていなかった全てのトランザクションをロールバックする。
エ:バックアップコピーでデータベースを復元し、 バックアップ取得以降にコミットした全てのトランザクションをロールフォワードする。(正解)
データベースに媒体障害が発生したときの回復法【午前2 解説】
要点まとめ
- 結論:媒体障害時はバックアップから復元し、バックアップ以降のコミット済みトランザクションをロールフォワードで反映します。
- 根拠:媒体障害は記憶装置の物理的故障であり、データベース全体の復元が必要だからです。
- 差がつくポイント:ロールバックは異常終了トランザクションの処理であり、媒体障害時の全体復旧には不十分です。
正解の理由
選択肢エは、媒体障害で失われたデータベースをバックアップコピーから復元し、その後バックアップ取得以降にコミットされたトランザクションをログからロールフォワードして反映する手順を示しています。これは媒体障害時の標準的な回復手順であり、データの整合性と完全性を確保します。
よくある誤解
ロールバックは障害時に未完了トランザクションを取り消す処理であり、媒体障害のようにデータ全体が失われた場合の回復には使えません。
解法ステップ
- 媒体障害が発生し、データベースの物理的なデータが破損または消失したことを確認する。
- 最新のバックアップコピーを用いてデータベースを復元する。
- バックアップ取得以降にコミットされたトランザクションのログを用意する。
- ログを順に適用(ロールフォワード)し、コミット済みの更新を反映させる。
- データベースの整合性を確認し、運用を再開する。
選択肢別の誤答解説
- ア:異常終了したトランザクションのロールバックは部分的な障害対応であり、媒体障害全体の回復には不十分です。
- イ:ロールフォワードは正しい処理ですが、バックアップからの復元が前提であり、単独では不完全です。
- ウ:コミットもアボートもしていないトランザクションのロールバックは通常の障害時処理であり、媒体障害の回復策ではありません。
- エ:バックアップ復元とロールフォワードを組み合わせた正しい媒体障害回復手順です。
補足コラム
媒体障害とは、ハードディスクやSSDなどの記憶媒体が物理的に故障する障害です。これに対して、トランザクション障害やシステム障害はソフトウェア的な問題であり、回復方法が異なります。媒体障害時は必ずバックアップからの復元が必要で、ログを使ったロールフォワードで最新状態に戻します。
FAQ
Q: ロールバックとロールフォワードの違いは何ですか?
A: ロールバックは未完了トランザクションの変更を取り消す処理、ロールフォワードはログを使ってコミット済みの変更を再適用する処理です。
A: ロールバックは未完了トランザクションの変更を取り消す処理、ロールフォワードはログを使ってコミット済みの変更を再適用する処理です。
Q: バックアップはどの頻度で取得すべきですか?
A: 障害時のデータ損失を最小限にするため、業務の重要度に応じて定期的に取得し、ログも併用して回復ポイントを増やします。
A: 障害時のデータ損失を最小限にするため、業務の重要度に応じて定期的に取得し、ログも併用して回復ポイントを増やします。
関連キーワード: 媒体障害、バックアップ、ロールフォワード、ロールバック、データベース回復、トランザクション管理

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

