WordPressをバックアップから復元する|障害・操作ミスからのサイト復旧

当ページは検証・整備中のドラフトです。
内容は実環境での検証や追加調査により変更される予定です。
参照:ページ公開・更新ポリシー

WordPressに障害やデータ破損などが発生した場合は、バックアップを利用して正常な状態への復旧を図る。

ただ必ずしもサイト全体を過去の状態へ戻す必要はなく、現在の正常なデータをできるだけ残し、バックアップの形式や利用できる復元機能に応じて、必要なデータだけを戻す方法、ステージング環境を経由する方法、サイト全体を戻す方法から選択する。

本Unitでは、障害やデータ破損などからの復旧を扱う。改竄やマルウェア感染が疑われる場合は、バックアップから安易に上書きせず、クリーンな環境への再構築を行う。

参考:WordPressサイトをクリーンにリビルドする

復元する範囲を決める

最初に、失われたデータや破損した範囲を確認する。

投稿やファイルなど一部だけを失ったのであれば、サイト全体を過去へ戻すより、必要なデータだけを復元する方が現在の状態を維持しやすい。

障害範囲が広い場合や正常な状態を特定できない場合は、サイト全体の復元も選択肢となる。

バックアップの復元方法を確認する

利用できる復元方法は、バックアップの取得方法や保存形式によって異なる。

ホスティングサービスでは、サイト全体、ファイル、データベースなど復元できる単位が決められている場合がある。バックアッププラグインについても、製品が用意する復元機能と対象となるデータの範囲を確認しておく。

ファイルとデータベースを個別に保存している場合は手動での復元も可能だが、確実に両方セットで復元するよう注意する。

必要なデータだけを復元する

失われた範囲を特定でき、バックアップから対象データを取り出せる場合は、その部分だけを現在の本番環境へ戻す。

バックアップから単独で取り出せるファイルや内容であれば、必要な部分だけを戻せる。一方、WordPressではファイルとデータベースが関連しているものも多く、単純なファイルコピーだけで元の状態へ戻せるとは限らない。

現在の正常なデータを残せることが、部分的な復元の大きな利点となる。

ステージング環境を経由して復元する

バックアップから必要なデータだけを直接取り出しにくい場合は、バックアップをステージング環境へ復元する方法もある。

ステージング上でバックアップ時点のサイトを再現し、必要な投稿、ファイル、設定などを確認する。その中から必要なデータだけを現在の本番環境へ移せば、本番サイト全体を過去へ戻さずに済む。

サイト全体を復元する場合も、使用するバックアップが正常に動作することをステージング環境で事前に確認しておけば、本番環境で復元に失敗するリスクを抑えられる。

参考:WordPressのステージング環境を用意する

サイト全体を復元する

障害範囲が広い場合や、正常だった時点へサイト全体を戻す方が確実な場合は、ファイルとデータベースを含めて復元する。

ホスティングサービスやバックアッププラグインに復元機能が用意されていれば、その仕組みを利用する。ファイルとデータベースを個別にバックアップしている場合は、両方を対応する時点のデータへ戻す必要がある。

復元前には現在のファイルとデータベースも保存しておく。障害が発生した状態であっても、バックアップ取得後に追加された正常なデータの回収や、復元後の比較に利用できる。

復元後の状態を確認する

復元後はサイトが表示されることだけでなく、管理画面へのログイン、主要なページや画像、フォームなど必要な機能まで確認する。

ECや会員機能などを利用している場合は、そのサイトで重要となる機能やデータも確認対象となる。

ステージング環境で復元を検証済みであっても、本番環境の確認も必ず行っておく。

バックアップ以降の差分を確認する

過去のバックアップからサイト全体を復元すると、バックアップ取得後に本番環境へ追加されたデータは復元後の環境に含まれない。

投稿、注文、問い合わせ、ユーザー登録など、復元した時点以降に発生したデータの有無を確認する。復元前に保存したデータや外部サービスなどから回収できるものがあれば、必要に応じて現在の環境へ反映する。

参考:世代管理とは