Webサイトのバックアップとは、ウェブサイトのすべてのデータ(ファイル、データベースなど)を複製して別の場所に保存することです。これにより、ハッキング、サーバーの故障、誤操作などの問題が発生した場合でも、ウェブサイトを元の状態に迅速に復元できます。バックアップは、ウェブサイトの運営を安定させ、リスクを最小限に抑えるために不可欠な対策です。

WordPressをバックアップしたい | さくらのサポート情報
バックアップ&ステージングを知りたい | さくらのサポート情報
BackWpUpの設定上の注意を知りたい(WordPress) | さくらのサポート情報
BackWPupの使い方と復元方法
WordPress環境を引越し、複製、バックアップ、リストアの手順
WordPressを別のサーバーへ移行する方法
サーバーの別フォルダにWordPressのテスト環境を作る

私自身、長年システム運用を担当してきた関係で、バックアップにはかなりのこだわりがあります。どのようなシステムでもバックアップは安定運用の基礎であり、最重要事項だと考えています。自動バックアップを設定し、一度は復旧の練習をしておくことを強く推奨します。

要件

  • 自動で手間なく確実にバックアップが取れる。
  • ローカルPCや、外付けSSDなど、安全な場所、2か所以上にバックアップを保管できる。
  • 復旧したいときに、迅速に復旧できる。
  • ゼロからの復旧、部分的に復旧の両方に対応できる。
  • バックアップ頻度は1日毎。履歴の保持期間は1年間。
  • 費用をなるべくかけない。
  • テスト環境の構築、別サイトへのコピーも行える。
  • 復旧作業は1時間以内に行えるようにする。

制約

  • さくらインターネットが提供するバックアップ(スナップショット)では要件を満たすことができない。ステージングも正しく機能しないようだ。
  • BackWPupプラグインは0からの復旧や、サイト移行には対応していない。

基本方針

  • BackWPupプラグインを使用して毎日深夜にWebサーバー上に全データをバックアップする。
  • 毎日のPCバックアップのついでにWebサーバーにあるバックアップファイルを自動でダウンロードする。ダウンロードしたファイルは Histcopy を使って NAS や外付け SSD にコピーする。
  • 復元はコマンドラインでコマンドを打って行う。

BackWPupの設定

  • 共用サーバーに負荷をかけないよう、あまり利用していない時間帯、深夜2:00~5:00位の間で、ランダムに決定した時刻にジョブを実行する。さくらインターネットの案内から、デフォルトの3:00は避けた方が良さそう。
  • バックアップ対象はデータベースとファイルの両方。
  • ファイル形式は zip。

作業用PCの設定

  • Histcopy とタスクスケジューラーを利用し、NAS へ3時間毎、外付けSSDへ1週間毎にバックアップを取る。
  • バッチファイルを書き換え、Histcopy 実行前に以下の自作ツールを実行し、バックアップファイルを自動でローカルにダウンロードする。

zipファイルのパスワードは「a」です。

※通信の暗号化(SFTP)に対応していなかったので後日修正します。

復元

  • FTP を使ってサーバーに zip ファイルをアップロードする。
  • SSH を使ってサーバーコンソールから復元用のコマンドを打つ。コマンドは以下の Excel ファイルで生成する。