DBトランザクション制御と回復(COMMIT・デッドロック・ロールフォワード)

更新日:

用語解説

データベースのトランザクション制御と回復は、データベースの更新の確定、同時に動く処理の競合、障害の後の回復を扱う仕組みです。

■ 試験で押さえるポイント

  • COMMITは更新を確定し、ROLLBACKは確定前の更新を取り消して元に戻します。

  • デッドロックは、複数の処理が互いにロックの解放を待ち続ける状態で、ロックを取る順番をそろえて防ぎます。

  • ロールフォワードは、バックアップを戻した後に、更新のログを順に適用して、障害の直前の状態にする回復の方法です。

処理

目的

判断ポイント

COMMIT

更新を確定

回復可能なログの安定記憶への書込み

ROLLBACK

未完了更新を取消し

更新前情報で後退復帰

ROLLFORWARD

バックアップ後の更新を再適用

更新後ログで前進復帰

デッドロック回避

相互待ちを防止

全処理でロック取得順を統一

問題画像

■ 過去問での着眼点

ロールバックは更新前の情報で取り消し、ロールフォワードは更新後の情報で進める回復と区別します。

例: ディスクが壊れたら、前日のバックアップを戻し、その後の更新のログを適用して障害の直前まで回復します。

音声で聞く

同じ分野の用語