当ブログも記事数も100を超えたので、もしもに備えてサイトの バックアップ を考えるようになりました。 WordPress のコンテンツの定期 バックアップ に便利な BackWPup プラグインと、サイト上の バックアップ ファイルを NAS へ同期転送する仕組みにWebDAVを使えず、 Rclone をFTPで使ってみました。
BackWPup バックアップジョブのセットアップ
WordPress管理画面から、【プラグイン→新規追加】でBackWPupプラグインをインストールすると、管理画面左のメニューにBackWPupの項目が現れます。
ダッシュボードはあまり実用的とは言えず、普段使うのはバックアップジョブが収められた「ジョブ」と、ジョブの実行履歴を閲覧出来る「ログ」、そしてバックアーカイブ一覧やダウンロードすることが出来る「バックアップ」の3つのページでしょう。
本稿執筆時における本ブログのデータ容量は次の通りです。
- 記事数 : 下書き含め150記事
- ファイル容量 : 600MB強
- データベース容量 : 250MB弱
日々、WordPress管理画面から執筆、添付画像をアップしているので、データベースとファイルは同じ頻度でバックアップを取りたいと思っています。
「新規ジョブを追加」で全データを対象としたバックアップジョブを作成してみます。ジョブ設定の「一般」タブで適当な名称と、ジョブの内容を設定するのですが、全データを対象とする場合は、
- データベースのバックアップ
- ファイルのバックアップ
- インストール済みプラグイン一覧
にチェックを入れれば網羅されます(データベースのバックアップを取るので、WordPressのXMLエクスポートは不要)。その下のアーカイブ名の命名ルールでは、アンダースコアを少し抜いて短めにしました。
「一般」タブ下方ではアーカイブ形式をTarGZipに、バックアップ先はフォルダーへバックアップ(Webサーバ上に保存される)としましたが、他に各種オンラインストレージへの出力にも対応しています。
ジョブを手動ではなく自動的に起動させたい場合は、「スケジュール」タブで「WordPressのcron」を選び、スケジュールを設定します。
スケジューラの「分」は5分刻みで、その種類を「高度」にするとチェックボックスに変わり、複数回の設定も可能になります。
「DBバックアップ」タブでは、既にWordPressで使用中のテーブルにはチェックが入っているので、さらに対象としたいテーブルがあればチェックを入れてバックアップに加えます。出力されるsqlファイルはテキストファイルなので、バックアップファイルの圧縮は必須です。
「ファイル」タブでは、バックアップ対象とする項目とその中で除外とする項目を設定出来ますが、基本的にデフォルトのままです。
その下方には、Webサーバ上にあるWordPress以外のコンテンツをフルパス指定で列記して、バックアップ対象に加えることも出来ます。
「プラグイン」タブは、インストール済プラグイン一覧をバックアップする際のファイル名と圧縮の有無を設定出来るので、GZip圧縮を選びます。
このジョブではバックアップ出力先をサーバ上のフォルダとしたので、ここでそのフォルダパスを設定することが出来る他、保持したいバックアップ・アーカイブ数を設定出来ます。
保存したジョブが一覧に加わりました。「今すぐ実行」をクリックすれば、スケジューラによる起動を待たずとも、実行することも可能です。
ジョブによって生成されたバックアップ・アーカイブは、BackWPupメニューの「バックアップ」で確認でき、個々のバックアップファイルにマウスを合わせ、ダウンロードをクリックすれば簡単にPCなどへダウンロード出来ます。
ジョブの実行履歴はBackWPupメニューの「ログ」に残されています。個々のエントリにカーソルを合わせ、「表示」をクリックすれば、ダウンロードせずとも簡易ビューアで閲覧可能です。
ログファイルを確認すると、600MB程度のバックアップ処理が30秒程度で済んでいました。
次ページでは、ロリポップサーバ上のローカルのSynology NASへ転送する仕組みを組みます。