WordPressを使い始めて約半年、ようやくバックアップの環境を整えました。
といっても、Wordpressなのでバックアップ用のプラグインBackWPupをインストールしただけですが。
BackWPupを選んだポイントは丸っとサイトをひとまとめにして、データベースを含めて全ファイルをバックアップできて、そのバックアップファイルはクラウドに保存されること。
バックアップファイルの保存先に他にも様々なクラウド、サーバを選べますが、取り敢えず既にアカウントを持っているDropboxを選びました。
バックアップファイルの世代管理もDropboxに任せてしまえば簡単です。
素晴らしい。
Sponsored Link
今回WordPressのバックアップ方法を調べてみるとバックアップファイルはメール添付で手元に送られるものが多かったのですが(現在の主流?)、今後はクラウドストレージに保存するものが増えるのではないでしょうか。
今回はDropboxにバックアップファイルを保存先にしましたが、これを手元のパソコンと同期させる必要は無いので、同期機能のない単純なネットワークストレージ的なサービスに複数世代のバックアップファイルを残すのもいいでしょう。
別のサーバにFTPで送ることも可能です。
BackWPupにはバックアップ以外にも、同時にデータベースの最適化や破損チェックをする機能があるのも魅力的です。
設定は簡単
インストールしたらまずWordPress管理画面のサイドバーのBackWpupメニューのSettingsを確認。大抵はデフォルト設定のままでいいと思いますが、まあ一応の確認だけ。
重要なのはAdd newの設定です。ここでバックアップのjobを設定します。フルバックアップやデータベースだけ、最適化だけ、など複数の異なる内容のjobを異なるタイミングで動かせます。
今回は初バックアップなので、とにかく全てバックアップするjobを設定しました。
Add newの画面の下部でバックアップファイルの保存先の指定ができます。今回選んだDropboxのアカウントとの接続の認証はOAuthなんですねー。なんとなくスマートな印象。
バックアップファイルの世代管理はDropboxに任せるので、Max. backup files in Dropbox folderの指定は1でOK。
最後に右上のJob Scheduleでバックアップのスケジュールを設定して、Activate schedulingにチェックを入れれば設定完了。
なのですが!!!実は今日の時点ではバックアップファイルの形式にzipを選んではいけません。
zipの扱いにバグがあり、リストアに失敗します。
その際のエラーメッセージにはメモリ不足的な事が書いてありますが、php.iniを弄るなどしてメモリを増やしても解決しません。
自分もこの罠にはまり、悩んで調べた末に辿り着いたサポートフォーラムで事態を把握しました。
このバグは次のバージョンで解消される見込みです。zipを選ばなければいいだけなので特に困ることも無いですが、このバグが直るまではこのサポートフォーラムのスレッドは見ておこうと思います。
サポートフォーラム:Allowed memory size › BackWPup
まずバックアップしてみよう
設定が終わったら、まず最初にリストアまで問題なく行えることを確認しましょう。
BackWpupメニューのJobsからjob管理で該当のjobのRun Nowをクリックすれば、すぐにバックアップが始まります。
自分の環境ではバックアップ所要時間は約8分。その内の5分くらいはDropboxへのデータ転送の時間でした。
最初と最後のログはこんな感じでした。
2012/03/18 01:31.56: [INFO]: BackWPup version 2.1.9, WordPress version 3.2.1 Copyright © 2012 Daniel Hüsken
2012/03/18 01:39.45: Job done in 469 sec.
ちゃんとリストア出来るか確認しよう
リストアはBackWpupメニューのtoolsから行います。
データベースとファイルは別処理になっています(ちょっと面倒)。
まずデータベースはtoolsのDB Restoreのところにある
Copy SQL file to blog root folder to use for a restoring.
の説明に従って、バックアップファイルからwordpress.sqlだけ抜き出して、WorPressのルートに置きます。
続いてその下にあるSelect file to import:でバックアップファイルを指定して、Uploadボタンをクリックすると
Warning: Invalid argument supplied for foreach() in ************\wp-content\plugins\backwpup\pages\page_backwpuptools.php on line 65
というエラーが出ますが、取り敢えず無視します。
この時、DB Restoreのメッセージが
SQL File to restore: **************/wordpress.sql
と変わって準備完了です。
そしてファイルのリストアの実行はその下にあるImportボタンを押します。
ここでも
Warning: Invalid argument supplied for foreach() in **************\wp-content\plugins\backwpup\pages\page_backwpuptools.php on line 81
とワーニングが出ますが、特に問題ありません。
そして、Restoreボタンをクリックでデータベースのリストアが開始され、こんなメッセージが出た後に「Jobs imported!」と表示されるとリストア完了です。
310 Database Querys done.
Make changes for Blogurl and ABSPATH if needed.
Restore Done. Please delete the SQL file after restoring.
ここで実際にWordPressを表示させて元通りになっているかを確認できればリストア成功です。
最後に
Dropboxのアカウントを持っていない方もこれを機会に作ってはどうでしょうか。
以下のリンクからアカウントを作るとあなたと私のそれぞれが500MB多く容量をもらえるので是非どうぞ。
Dropbox
ようやくバックアップ環境が整ったことで、WordPress弄りがしやすくなりました。
最後に、参考までに今日の自分の環境を書いておきます。
BackWPup 2.1.9
WordPress 3.2.1