テクノロジ系データベース

ロールバックとは?

読み方: ろーるばっく
1行定義

トランザクション中に障害や不整合が発生した場合に、トランザクション開始前の状態にデータを戻す処理。コミットの反対操作

詳細解説

ロールバック(Rollback)は、データベースのトランザクション処理においてトランザクション中に障害・エラー・整合性違反が発生した場合に、そのトランザクションで行われたすべてのデータ変更を無効にしてトランザクション開始前の状態にデータを復元する操作です。コミット(Commit:変更を確定・永続化)の反対操作で、ACIDのAtomicity(原子性)を保証する仕組みの一部です。ロールバックが実行される典型的な場面はアプリケーションが明示的にROLLBACK文を実行した場合(ビジネスロジックエラー検出時)・システム障害(サーバーやDBのクラッシュ)によるトランザクションの中断・デッドロックが検出されてDBシステムが犠牲者トランザクションをロールバック・制約違反(NOT NULL違反・外部キー制約違反等)発生時です。ロールバックの実現にはDBMSがトランザクションログ(変更前データを記録するUNDOログ)を使います。ロールバックはUNDOログを参照して変更を逆順に取り消します。部分ロールバック(セーブポイント)はSAVEPOINT文でトランザクション内に中間ポイントを設け、完全なロールバックではなくセーブポイントまで戻すことが可能です。ロールカバリ(Recovery)とは障害後にDBを正常状態に戻す処理全体を指し、コミット済みトランザクションのロールフォワード(再実行)と未コミットトランザクションのロールバック(取り消し)の両方を含みます。ITパスポートでは「ロールバックの定義」「コミットとの対比」「トランザクションの原子性との関係」「UNDOログ」が出題されます。

ITパスポートでの出題ポイント

  • 1トランザクション中の障害・エラー時に変更を無効化して開始前の状態に復元
  • 2コミット(変更確定)の反対操作。UNDOログを使い変更を逆順取り消し
  • 3原子性(Atomicity)の保証:全部完了かゼロかのどちらかを保証
  • 4デッドロック検出時やシステム障害時にDBMSが自動実行

関連用語

トランザクション(Transaction)
データベース
ACID特性
データベース
2相コミット
データベース
デッドロック
ソフトウェア
SQL
データベース

ロールバック」の過去問を解いて理解を定着

合格ナビでは IPA 公式 600問 + AI解説 で「○○とは?」をその場で深掘りできます。

シラバス 6.5 準拠 / 最終更新: 2026-05-26