UX / UI のデザインに強いWebシステムの開発と、BtoB Webマーケを支援するWeb制作を提供するN’s Creates (エヌズクリエイツ) 株式会社の西山です。
バックアップを使ってデータを復旧させる際、「リストア」と「リカバリ」という似て非なる言葉が出てきます。この違い、明確に説明できますか?
今回は、データベースのバックアップ戦略と、正しい復旧の知識について解説します。
データベースバックアップの主な種類
バックアップと一口に言っても、取得する方法やデータの状態によっていくつかの種類があります。代表的な3つを見ていきましょう。
1. フルバックアップ (Full Backup)
最もシンプルで強力な方法です。「データベース全体のすべてのデータを、丸ごとコピーする」バックアップです。
- メリット: 復旧が簡単です。このバックアップファイルさえあれば、その時点の状態に完全に戻せます。
- デメリット: データ量が多いと、バックアップに非常に時間がかかり、ストレージ容量も大量に消費します。
(例:毎週日曜日の深夜に全データをバックアップする)
2. 差分バックアップ (Differential Backup)
「前回の『フルバックアップ』以降に変更された部分だけ」をバックアップする方法です。
- メリット: フルバックアップより高速で、容量も節約できます。
- デメリット: 復旧時には「直近のフルバックアップ」と「直近の差分バックアップ」の2つが必要になり、少し手順が複雑になります。
(例:日曜にフルバックアップ。月〜土は、毎日「日曜からの差分」をバックアップする)
3. 増分バックアップ (Incremental Backup)
「『前回(フルまたは差分/増分)のバックアップ』以降に変更された部分だけ」をバックアップする方法です。
- メリット: 日々のバックアップ時間が最も短く、容量も最小限で済みます。
- デメリット: 復旧が最も複雑です。「直近のフルバックアップ」+「それ以降のすべての増分バックアップ」を順番に適用する必要があり、手間と時間がかかります。
(例:日曜にフル。月曜は「日曜からの増分」。火曜は「月曜からの増分」…と繋げていく)
「リストア」と「リカバリ」の決定的な違い
さて、ここからが本題です。バックアップからデータを戻す際、この2つの言葉はよく混同されますが、意味は明確に異なります。
リストア (Restore) とは?
リストアは「バックアップファイルを所定の場所に戻す(書き戻す)」という、物理的な「復元」作業そのものを指します。
- 目的: バックアップ取得時点のデータファイル(物理ファイル)を復元すること。
- 例: 「昨日のフルバックアップを、データベースサーバーに書き戻す」作業。
リストアが完了しただけでは、データベースはまだ使えません。 なぜなら、バックアップ時点(例:昨日の深夜)以降の変更が反映されていないからです。ここで「リカバリ」が必要になります。
リカバリ (Recover) とは?
リカバリは「リストアしたデータを『一貫性のある最新の状態』に回復させる」という、論理的な「回復」作業を指します。
データベースは「トランザクションログ(またはアーカイブログ)」という、ACID特性(特に永続性)で使われる「すべての変更履歴」をバックアップとは別に記録しています。
リカバリは、リストアしたデータ(例:昨日の深夜時点)に対して、このトランザクションログを適用(ロールフォワード)し、障害発生直前までの変更をすべて反映させていく作業です。
- 目的: データを「障害発生直前」または「指定した特定の時間」の、矛盾のない状態に回復させること。
- 例: 「リストアしたデータに、昨日深夜から障害発生までのトランザクションログを適用する」作業。
復旧作業の正しい流れ
つまり、私たちが一般的に「データを復旧させる」と言う場合、裏側ではこの2ステップが実行されています。
- リストア(復元): 直近のバックアップ(フル+差分など)をサーバーに書き戻す。
- リカバリ(回復): 1.で戻したデータに、トランザクションログを適用して、最新の状態まで進める。
この2つが揃って初めて、データベースは正常に再稼働できるのです。
まとめ
システムの信頼性を確保するために、バックアップは不可欠です。しかし、ただバックアップを取っているだけでは安心できません。
- どの種類のバックアップ(フル、差分、増分)を、どの頻度で取得するのが最適か?
- 「リストア」と「リカバリ」の手順を正確に理解し、実際にテストしているか?
障害は必ず起きるものとして、「どう復旧させるか」までをセットで設計しておくことが、信頼できるシステムを支える鍵となります。
UX / UI のデザインに強いWebシステムの開発と、BtoB Webマーケを支援するWeb制作を提供する
N's Creates 株式会社は、神戸三宮オフィスまで週1出社(それ以外はリモートワーク)できる「デザイナー」「エンジニア」を募集しています。
興味のある方は、カジュアル面談しますので気軽にお問い合わせください!









