基本情報技術者試験 - 令和8年1月修了 - 問22
| ア | バックアップ取得後でコミット前に中断した全てのトランザクションをロールバックする。 |
|---|---|
| イ | バックアップ取得後でコミット前に中断した全てのトランザクションをロールフォワードする。 |
| ウ | バックアップ取得後にコミットした全てのトランザクションをロールバックする。 |
| エ | バックアップ取得後にコミットした全てのトランザクションをロールフォワードする。 |
答え : エ
分野 : テクノロジ系 › 技術要素 › データベース › トランザクション処理
解説 :
データベースの障害回復に関する処理手順を問う問題です。媒体障害(ハードディスクの故障など)が発生した場合,まず最新のバックアップをリストア(復元)します。その後,バックアップ取得後にコミット(確定)された全てのトランザクションについて,トランザクションログを使って再実行する「ロールフォワード」という操作を行い,データを最新の状態まで復元します。
誤りの選択肢のうち,「バックアップ取得後で未コミットのトランザクションをロールバックする」という説明は,システム障害時の回復処理(アクティブトランザクションの取消し)に近い内容であり,媒体障害からの復旧手順としては誤りです。「コミット前のトランザクションをロールフォワードする」「コミット済みのトランザクションをロールバックする」という説明も,コミットの有無と処理内容の組合せが逆になっており,正しくありません。ロールフォワードは「コミット済みの変更を再現する」処理,ロールバックは「未コミットの変更を取り消す」処理という対応関係を正確に覚えることが重要です。
分野 : テクノロジ系 › 技術要素 › データベース › トランザクション処理
解説 :
データベースの障害回復に関する処理手順を問う問題です。媒体障害(ハードディスクの故障など)が発生した場合,まず最新のバックアップをリストア(復元)します。その後,バックアップ取得後にコミット(確定)された全てのトランザクションについて,トランザクションログを使って再実行する「ロールフォワード」という操作を行い,データを最新の状態まで復元します。
誤りの選択肢のうち,「バックアップ取得後で未コミットのトランザクションをロールバックする」という説明は,システム障害時の回復処理(アクティブトランザクションの取消し)に近い内容であり,媒体障害からの復旧手順としては誤りです。「コミット前のトランザクションをロールフォワードする」「コミット済みのトランザクションをロールバックする」という説明も,コミットの有無と処理内容の組合せが逆になっており,正しくありません。ロールフォワードは「コミット済みの変更を再現する」処理,ロールバックは「未コミットの変更を取り消す」処理という対応関係を正確に覚えることが重要です。