応用情報技術者 2016年 春期 午前2 問30
問題文
媒体障害の回復において、最新のデータベースのバックアップをリストアした後に、トランザクションログを用いて行う操作はどれか。
選択肢
ア:バックアップ取得後でコミット前に中断した全てのトランザクションをロールバックする。
イ:バックアップ取得後でコミット前に中断した全てのトランザクションをロールフォワードする。
ウ:バックアップ取得後にコミットした全てのトランザクションをロールバックする。
エ:バックアップ取得後にコミットした全てのトランザクションをロールフォワードする。(正解)
媒体障害の回復におけるトランザクションログの操作【午前2 解説】
要点まとめ
- 結論:媒体障害後のデータベース回復では、バックアップ後にコミット済みのトランザクションをロールフォワードして最新状態に戻します。
- 根拠:バックアップはある時点の状態を保存しているため、その後のコミット済み変更をログから適用しなければ最新データになりません。
- 差がつくポイント:コミット前のトランザクションはロールバックし、コミット済みのものだけをロールフォワードする点を正確に理解することが重要です。
正解の理由
正解はエの「バックアップ取得後にコミットした全てのトランザクションをロールフォワードする」です。
媒体障害からの回復では、まずバックアップをリストアし、その後トランザクションログを使ってバックアップ以降にコミットされた変更を適用(ロールフォワード)します。これにより、障害発生直前の最新のデータベース状態を復元できます。
媒体障害からの回復では、まずバックアップをリストアし、その後トランザクションログを使ってバックアップ以降にコミットされた変更を適用(ロールフォワード)します。これにより、障害発生直前の最新のデータベース状態を復元できます。
よくある誤解
トランザクションログの操作で「ロールバック」と「ロールフォワード」を混同しやすいです。ロールバックは未コミットの処理を取り消す操作であり、回復時にはコミット済みの処理を適用するロールフォワードが必要です。
解法ステップ
- 媒体障害発生時点での最新バックアップをリストアする。
- バックアップ取得以降のトランザクションログを確認する。
- コミット済みのトランザクションをログから抽出する。
- これらのコミット済みトランザクションをロールフォワード(適用)してデータベースを最新状態に戻す。
- コミット前のトランザクションはロールバックされるため、特別な操作は不要。
選択肢別の誤答解説
- ア: バックアップ後でコミット前のトランザクションをロールバックするのは正しいが、回復操作全体の説明としては不十分。
- イ: コミット前のトランザクションをロールフォワードするのは誤り。未コミットの処理は適用しません。
- ウ: コミット済みのトランザクションをロールバックするのは誤りで、データの整合性を損ないます。
- エ: 正解。コミット済みトランザクションをロールフォワードして最新状態に戻します。
補足コラム
トランザクションログはデータベースの整合性を保つために不可欠な仕組みです。障害発生時には、バックアップとログを組み合わせて「ポイントインタイムリカバリ」が可能です。ロールフォワードはコミット済みの変更を適用し、ロールバックは未コミットの変更を取り消す操作として使い分けられます。
FAQ
Q: ロールフォワードとロールバックの違いは何ですか?
A: ロールフォワードはコミット済みの変更を適用し、ロールバックは未コミットの変更を取り消す操作です。
A: ロールフォワードはコミット済みの変更を適用し、ロールバックは未コミットの変更を取り消す操作です。
Q: なぜバックアップ後のコミット済みトランザクションだけを適用するのですか?
A: バックアップはある時点の状態を保存しているため、その後のコミット済み変更だけを適用して最新状態に戻す必要があるからです。
A: バックアップはある時点の状態を保存しているため、その後のコミット済み変更だけを適用して最新状態に戻す必要があるからです。
関連キーワード: トランザクションログ、ロールフォワード、ロールバック、データベース回復、媒体障害、バックアップリストア

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

