連載第98回
2014年8月24日
WordPress DB バックアップに「BackWPup」を試す

 前回の記事「第97回:WordPress データベースのバックアップを考える」では、気が付いたときに手動でバックアップを取ることを考えてみたのですが、引き続き今回はプラグインを使ってのDBバックアップを考えます。ここで「おいおい、前回でプラグインを使う意味は無いって言ってたじゃないか」という指摘はごもっともなのですが、連載100回までの残り2回分の記事ネタがまったく思い付かなくて、今回は無理矢理ねじ込みでこしらえた企画なのです。まあ、サイトを2つ持ってると、やっぱり面倒くさいな…というのも少しあります。

BackWPup をチョイス

 当サイトではデータベースのバックアップと最適化・リペア用に「WP-DBManager」というプラグインも使用していて、これまで特に問題もなかったのですが、今回は「BackWPup」というプラグインを試してみます。そこで使用方法を調べてみたのですが、最新バージョンにキャッチアップしてる記事が見つけられなくて、以下はアレコレ試行錯誤してる状況をそのまま記事にしました。

Generalから

 まずはローカルMAMP上でテスト開始。普通にダッシュボードから検索をかけて、そのままインストール、有効化します。するとこんな画面が出てきて驚く。如何にもクラウド対応してますよ!って感じです。


 WPのダッシュボードにBackWPupメニューが追加されていて、各種設定は全部そこから行います。まずはスケジュール管理の単位「job」を作成せねばならぬらしく、「Add new job」を選ぶ。

 するとまず最初に「General」タブが開くので、ジョブの名前を適当に付けます。今回はDBバックアップとしました。

 その下はジョブ・タスク。作成するジョブの内容を決めるのですが、ここは全部チェックを入れてみます。すると上のタブがチェックに応じて増減するのが分かります。

 次に、バックアップ・ファイル・クリエイション。アーカイヴするファイルの形式を決めます。適当にファイル名のフォーマットを設定して、圧縮はZIPにしました。

 続けて、圧縮したバックアップファイルをどこに保存するかの設定ですが、現時点ではローカルMAMPでの設定なので、先頭の「Backup to Folder」のみにチェックを入れておきます。そのフォルダの指定は後ほど別のタブで行います。

 ログファイルをメール送信する場合は、そのメアドを記入。空白にするとメール送信はしません。キャプチャ画像にはテスト@サンプルが入ってますが、ここはもちろん空白にしました。

Scheduleタブ

 スケジュールタブに移動します。ここで定期バックアップの間隔を設定するのですが、僕の場合、ブログ更新頻度が低いので、しばらく放置していると同じ内容のファイルが溜まってしまい、バックアップとしての意味が無くなります。ここはマニュアルオンリーの「手動バックアップ」で。

DB Backupタブ

 次にデータベースのバックアップタブです。DBのテーブルは全チェック。バックアップファイル名はブログで使用中のデータベース名をそのまま。必要に応じて圧縮。

 ここでふと思ったのですが、このデータベース(.sql)のバックアップと、前回試したxmlファイルのエクスポート&インポートはどう違うのでしょう?ここでMAMPからphpMyAdminを開いて、インポート画面をぼんやり眺めてみる…。

 もしかして、まっさらの新規データベース上へ、SQLフォーマットで直にインポートしたら、例の「ID番号ズレ」とか起きない可能性ってあるのだろうか。むむむ、これは実験してみたい。でも今は忙しいので冬まで先送り。

Filesタブ

 これがBackWPupの特徴というか、これまで使ってきたプラグインでは、WordPressのMySQLデータベースのみバックアップしていたのだけれど、BackWPupはWordPressフォルダ丸ごとバックアップしてくれるのです。自作テーマやコンフィグ.php、アップロードした画像や音声ファイルはもちろん、プラグイン等も、全部圧縮して保存。

 Exclude(除外)下の項目にチェックを入れると、その項目はバックアップ対象から除外されます。テーマ関連では自作テーマのみバックアップを行い、デフォルトで付属している3つのテーマにはチェックを入れて除外。上の画像では「upgrade」にチェックが入ってますが、それは後から外してバックアップすることにしました。

 以下はひとまずこんな感じに。

XML exportタブ

 これは前回、WordPressでxmlファイルを介して、エクスポート&インポートした時と同じ内容。

Pluginsタブ

 これは単純にインストールしているプラグインのリストや情報等をテキストファイルで残すという設定。さほど重要でも無いと思うので、Generalタブから「Installed plugins list」のチェックを外して構わないかも。

DB checkタブ

 古いバージョンのBackWPupでは、MySQLデータベースの最適化(Optimize)機能があったのですが、最新バージョンでは見当たりません。おそらく、このDB checkタブで統廃合されていると思うのだけれど、リペアはよいとして、テーブルオンリーの意味が具体的に分からない…。英語だとピンと来ないのですが、ひとまずチェックを入れておきます。どうせMySQLはWordPressでしか使っていませんし。

To Folderタブ

 Generalのジョブ・ディスティネーションで選んだ項目のタブが現れて、ここで詳細設定できるようになるんですね。デフォルトだとアプリケーション>MAMP内のディレクトリが指定されているのですが、MAMP内を複雑にするのもなんなので「書類」の中に3個バックアップすることにしました。

でわ、テスト実施

 それでは早速バックアップのテストを行ってみます。手動でタスクをスタートさせるのですが、WordPressダッシュボードの一番上から「Run Now」出来ました。また「job」メニューからも「Run Now」出来ます。


 バックアップ実行中です。ローカル内での作業ですが、これがリモートだと結構重くなるような気がします(やはり頻繁な定期バックアップは避けた方が良いのかも)。今回はデフォルトのままで省略しますが「Setting」メニュー内の「jobs」で処理の負担を軽減させる設定が出来るようです。サーバー環境に応じて調整する必要がありそうです。

 処理が終わった後に指定したディレクトリが「書類」フォルダに出来ていました。HTML形式のログファイルとZIPで圧縮されたバックアップが在ったので、解凍して中身を見てみると、xmlやsql等の追加ファイル(選択している5ファイル)と、WordPressフォルダが丸ごとバックアップされていました。これは便利かも!!

 ボタン一つ押すだけなので、前回決めた「何か記事を投稿した後に手動でxmlファイルをエクスポートしておくルール」と手間は全く変わらないのですから、初回の設定だけはチマチマ面倒ではあるけれど、それさえ済んでしまえばこっちの方が断然便利で安心。採用。つづく。

次回、リモートサーバーでのテストを行います。