WordPressのバックアップを取る

 

WordPressを使ってブログを書き始めると、必ずバックアップを取るようにしましょう。気がつけば記事の量も増えてきた時に、何か問題があってせっかく積み上げてきた記事がパァになると、、考えただけでも落ち込んでしまいます。自らのミスによる問題でパァになるだけでなく、レンタルサーバーの問題でパァになると納得できずに立ち直るのも困難です。。
それでは、どのようにWordPressのバックアップは取ればいいのでしょうか?

バックアップすべきもの

バックアップすべきものを知るためにWordPress構造の概要を見てみましょう。WordPressはブラウザで表示するコンテンツを動的に生成しています。動作のベースとなっているのはPHPとSQLです。普段の作業で書いている記事はSQLデータベースに保存され、WordPressテーマに記載されているPHPプログラムが、指定に応じてSQLデータベースから情報を取り出して表示しています。
仕組み

この仕組みから考えると、「表示するためのプログラム(WordPress本体と使用しているテーマ)」と「表示するためのデータ(固定ページや投稿ページなどのデータ)」があることが分かります。この2つの情報をバックアップすれば、ほとんどの場合で元の状態に復元できます。最低限でも表示するためのSQLデータがあればなんとか復元は可能ですが、もしテーマファイルをカスタマイズしている場合は、WordPressとテーマを再インストールした後に同じカスタマイズをしなければ正しく動作しません。テーマやプラグインなどもWordPress環境下に含まれてるので、WordPressフォルダ全体をまるっとバックアップしておけば確実に復元できるでしょう。

【バックアップすべきものまとめ】

  • WordPressフォルダ全体
  • 関連しているSQLデータ

この2つをバックアップしましょう。

バックアップの方法

次にバックアップの方法ですが、大きく2つの方法があります。1つは全て手作業によるバックアップ、もう1つはプラグインを使ったバックアップです。それぞれについてその方法を説明します。

手作業によるバックアップ

WordPressフォルダ全体とSQLデータのバックアップは、それぞれ違った作業でバックアップを取ります。
<WordPressフォルダ全体のバックアップ>
Web環境にインストールしたWordPressのフォルダをまるごとzipやgzipなどに圧縮してバックアップ場所に保存します。

zipコマンド例:
$ zip -r [圧縮ファイル名] [圧縮するWordPressフォルダ]

<SQLデータのバックアップ>
別の記事「レンタルサーバーで作成したWordPressのサイトをローカル環境へ移行する方法」で説明していますが、phpMyAdminを操作してSQLデータをエクスポートします。バックアップ対象のデータベースを選択し、「エクスポート」タブから「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENTを追加」をチェックし実行ボタンを押すと.sqlファイルが作成されます。

スポンサーリンク

プラグインを使ったバックアップ

ここではBackWPupプラグインを使ったバックアップを紹介します。この他にもバックアップ機能のプラグインがありますので、比較してみてもいいと思います。
<BackWPupの利用方法(フルバックアップを例にしています)>

  1. WordPressのプラグインメニューからBackWPupをインストールして有効化してください。
    https://ja.wordpress.org/plugins/backwpup/
  2. 有効化するとWordPress画面左にBackWPupメニューが出てきますので、そこから「Add new job」を選択して新しいjobを作成します。
  3. jobの設定をフルバックアップするための設定にします。

[ General ]
– Please name this job. : このjobの名前を入力します。
– This job is a … : バックアップ対象をチェックします。この例は全てにチェックしています。
– Archive name : バックアップのファイル名を設定します。
– Archive Format : ファイアップファイルの圧縮形式を指定します。
– Where should your backup file be stored? : バックアップファイルをどこに保存するかを指定します。この例は「Backup to Folder」を選択して、別の設定で場所を指定します。
– Send log to email address : ログを送信するメールアドレスを入力します。デフォルトでWordPressに設定しているアドレスが入力されています。
– Email FROM field : メールのFROMに書かれる内容です。デフォルトでタイトルが入力されています。
– Errors only : エラーが発生したときだけ送るかどうかの設定です。デフォルトONになってます。
BackWPup1

BackWPup2

[ Schedule ]
– Start job : バックアップ方法を選択します。デフォルトはmanual only(手動)です。自動に設定するにはwith WordPress cronを選択して、画面下のSchedulerで頻度を設定します。
BackWPup3

[ DB Backup ]
– Tables to backup : フルバックアップなので全て選択します。
– Backup file name : SQLデータのバックアップファイル名を入力します。
– Backup file compression : 圧縮するかどうかを選択します。
BackWPup4

[ Files ~ DB Check ]
これらの設定はデフォルトで問題ないです。XMLやPluginsのリストファイル名を変更したい場合は入力してください。
BackWPup5

[ To: Folder ]
– Folder to store backups in : バックアップファイルを保存する場所を入力します。「Backup to Folder」を選択すると表示されます。デフォルトは「uploads/xxxxxxxx」となっていて、利用しているWordPressのwp-content配下のuploadsフォルダを指しています。ルートから指定する場合は「/home/xxxxxx/yyyyy/zzzzz」などど設定します。
BackWPup8

上記の設定をしたあとは、BackWPupメニューにあるjobs項目のリストから対象のjobの「Run now」をクリックすると設定に応じたバックアップを実行します。また自動に設定していると設定した頻度でバックアップを実行します。

バックアップの復元

復元は別の記事「ローカル環境で作成したWordPressのサイトを、レンタルサーバーへ移行する方法」と同じように、バックアップファイルを解凍し.sqlファイルをphpMyAdminを操作してインポートすると復元できます。また、復元する環境に応じて、Search-Replace-DBを使用してドメイン名などを変換してください。