【でーたべーすばっくあっぷ】
データベースバックアップ とは?
最終更新:
💡 データを残し、戻せるところまで確かめる
障害や誤操作に備え、データベースを復元するためのデータを保存すること。論理・物理・ログの保存などがあり、復元方法や必要な組み合わせは製品と方式による。保存だけでなく、復元できるかの確認も重要。
📌 このページのポイント
- 論理・物理など、保存する内容と復元方法を選ぶ
- 差分は基準のフルから、増分は指定した前の保存からの変更
- 復元に必要な元のバックアップやログも残す
- 復元テストで、戻せる範囲と所要時間を確認する
フル・差分・増分は、どう違うの?
pg_dumpは、全部SQLのテキストになる?
PostgreSQLのpg_dumpは、SQLのテキストのほか、専用のアーカイブ形式にも出力できるよ。専用形式の復元にはpg_restoreを使う。pg_dumpは一つのデータベースを扱い、ロールなど全体で共有する情報は別途保存が必要な場合がある。出力形式と対象範囲を確認しよう。
障害直前の状態まで戻せる?
残してあるデータとログによるよ。PostgreSQLのPITRは、ベースバックアップと連続したWALの保存を使って、復元する時点を指定できる。pg_dumpの出力へWALを足す方式ではないんだ。必要なログが欠けていれば戻せず、アーカイブを使うだけでデータ損失がゼロになるわけでもないよ。
保存の処理が成功していれば安心かな?
テスト用の環境へ実際に復元して、必要なデータが戻るか、どれくらい時間がかかるか確かめよう。復元に必要なバックアップやログを消さない管理も必要だよ。保存先が同じ障害で失われないか、アクセスできる人は適切かも確認する。頻度や保存期間は、戻したい範囲と運用条件に合わせて決めよう。
もっと詳しく知りたい人へ
増分バックアップだけを残せば復元できる?
単独では必要なデータがそろわない場合があるよ。たとえばPostgreSQL 18の増分バックアップは、依存する前のバックアップも必要で、pg_combinebackupで組み合わせる。復旧に必要なWALも別に要る。製品の手順に沿って依存関係を管理し、復元テストで確認しよう。
まとめ:ざっくりこれだけ覚えればOK!
「データベースバックアップ」って出てきたら「障害や誤操作に備え、DBを復元するための保存」と思えばだいたいOK!
📖 おまけ:英語の意味
「Database Backup」 = データベースの予備の保存
💬 バックアップは復元のために残すもの。保存の成功と、必要な状態へ復元できることを両方確認しよう。