バックアップとリストアの判断
バックアップで行う必要のある作業 (バックアップの取得、リストア、特定時点への復帰 - PITR、バックアップの検証) を段階的に案内し、各データベースに適したコマンドと手順へと導く診断フロー。
何をしたいか?
目的を選択する。新しいバックアップを取得するのか、既存のバックアップをリストアするのか、特定の時刻 (障害の直前) に戻るのか、それとも手元のバックアップが健全であることを検証するのか?
- バックアップを取得したい
- バックアップをリストアしたい
- 特定の時点に戻る (PITR)
- バックアップを検証したい
どの種類のバックアップか?
論理バックアップ (ダンプ) は移植性があり選択的なリストアに適しているが、大量データでは遅い。物理バックアップ (ファイル / ブロックレベル) は大規模データベースと高速な復旧に適している。必要に応じて選択する。
- 論理バックアップ (ダンプ / エクスポート)
- 物理 / フルバックアップ
論理バックアップ (ダンプ) の取得
データを SQL/BSON ステートメントとしてエクスポートする。バージョン / プラットフォーム間の移行や、単一テーブル / コレクションのリストアに最適。
物理 / フルバックアップの取得
データファイルのブロック / ファイルレベルのコピー。大規模データベースでも高速で、PITR と完全復旧の基盤となる。
バックアップのリストア
手元にある最適なバックアップをターゲットにリストアする。まずバックアップの整合性とタイムスタンプを検証し、次にエンジンに適したコマンドでロードする。
特定の時点への復帰 (PITR)
誤った削除 / 破損の直前に、秒単位の精度で戻りたい場合。フルバックアップ + その時点までのトランザクションログ (アーカイブログ / WAL / binlog) が必要。
バックアップの検証
バックアップは、リストア可能であることが証明されて初めてバックアップといえる。整合性と実際のリストア可能性を定期的にテストする。