WordPressバックアップを行う

WordPressバックアップを行う

困ったこと

困ってはいませんでしたが、やっておかないといつ困るかわからないことそれがバックアップです。小さいことであれば一生懸命作ったExcelのファイルが消えてしまって復元できないということが自分はよくあります。誰でもそうなのかもしれませんが、私は非常に多いです。よってWordPressでもバックアップを早く行っていきたいと考えていました。

解決する為に行ったこと

2つの悩み

1.バックアップの保管場所

保管する場所の選択肢が下記のとおり複数考えられました。様々な点を考慮して結論としてはAWSのS3に保存しておくことにした。

・普段使用しているWinPC

こちらは一番身近で行いやすいと考えていましたが、バックアップで普段使用しているHDDを使うのはどうなのかなぁと考えていました。他に選択肢がなければ選んでいたと思いますが、最後の手段と考えていました。

・サーバ兼学習用CentOS(2台目PC)

現在は主にgitサーバとして使用しているPCになります。昔はLinuxの学習であったりWebサーバを立てる為に使用していたりしました。1番最初はこのgitを使用していい感じにバックアップをしていこうと考えました。ただ、現在はグローバルIPの固定等はしていない為、すぐ(15分くらい)には難しいと判断しました。方法論としてはCentOSから接続してバックアップをとるようなシェルでも書いてcronで回せばよいと考えましたが、結果できたとして保守する労力を考えやめてしまいました。今後、必要が出てきたら改めて考え行っていきたいと考えています。

・Dropbox等のAWS以外の無料ストレージサービス

ここでもよかったかもしれませんが、様々なクラウドサービスを使うと混乱しそうなのでやめました。バックアップを取りたいものがAWSにあることを考えれば他のサービスを利用し安全性を取るということも考えましたが、AWSで且つ違う領域に保存するのでまず安全であり更にそこまで大事なものではないので今回はAWS以外の無料ストレージサービスの使用はやめました。

・AWS S3

現在AWSを少しづつ学習しているので使わない手はないと判断しました。少しお金の面が心配ですがそれも勉強であると考えています。そもそも、サーバ兼学習用CentOSを常時動かし時々保守をすることを考えればAWS S3でよいのかなとも思っています。

2.バックアップ管理方法

最初イメージしたものはgit等のバージョン管理システムを入れてどんな変更があったか等を追いやすくしてあればかっこいいかなと思っていました。しかし、本当に今必要なのかを考えていったところ今は最新のバックアップだけでよいのではないかと考えました。今後長く続けていったり規模が大きくなった場合は必要であるが現状困っていないのであればリッチにする必要はない。と考え、最悪のことが起きた際似たようなもの作れる状態にしておけばよいと考えました。よって、1週間に1回程度必要なものを保管のみしていくことにしました。よってできる限り簡単にバックアップをとる方法を探しました。

解決した手順

※細かい手順等はは割愛しています。大変恐れ入りますが、各キーワードからインターネット検索やリンクから手順をご確認ください。

1.S3のバケット作成

※AWSのアカウントは既にあり、コンソールにアクセスできる状態になっていることが前提である。

①S3の画面に遷移し、「バケットを作成する」ボタンからバケットを作成する。

②バケット名、リージョンを適当なもので入力する。

③プロパティは特になにも設定せず、次に進む。

④アクセス権限も変更無し(このパケットにパブリック読み取りアクセス権限を付与しない(推奨)、
Amazon S3 ログ配信グループにこのバケットへの書き込みアクセス権限を付与しないを選択)で、次に進む。

⑤設定を確認して、パケットを作成する

2.バケットにアクセスできるユーザーの作成(IAM設定)

WordPressのバックアップと復旧ができるユーザーを作成します。

①IAMの画面を開く。

②左メニューの「ユーザー」をクリックする。

③ユーザー一覧の画面に遷移したら、「ユーザーを追加」をクリックする。

④ユーザ名は適切なユーザ名を入力し、アクセスの種類は「プログラムによるアクセス」のみにチェックする。

⑤「アクセス権限」の画面に遷移したら、「既存のポリシーを直接アタッチ」をクリックする。

⑥「AmazonS3FullAccess」を選択する。

⑦設定を確認し、ユーザの作成をする。

⑧「csvのダウンロード」をボタンをクリックして、認証情報をダウンロードする。ダウンロードしたCSVの「Access Key ID」と「Secret Access Key」を後程使用する。

3. BackWPupインストールと設定

WordPressのプラグイン「BackWPup」はテーマや画像等のアップロードファイル、データベースのバックアップを自動でしてくれます。

①WordPress管理画面の[プラグイン][新規追加]から「BackWPup」と検索し、インストールする。インストール後、BackWPupを「有効化」する。

②管理画面の左下に「BackWPup」というメニューが追加されているので、ここにカーソルを当てて[新規ジョブを追加]をクリックする。

③各タブの設定を行い、設定を保存する。(ここでは重要と考える部分のみ補足する)

・このジョブは・・・デフォルトの「データベース」「ファイル」「プラグイン」を選択
・アーカイブ形式は・・・こだわりがなければ「Zip」を選択
・バックアップファイルの保存先・・・「S3サービスにバックアップ」選択
・ジョブの開始方法・・・WordPress の cron
・テーマのバックアップ・・・twenty〇〇は除外
・S3 サービスを選択・・・Amazon S3:△△ ※△△はバケットを作成したリージョン
・アクセスキー、秘密鍵・・・バケットにアクセスできるユーザー作成した際にダウンロードしたCSVの「Access Key ID」と「Secret Access Key」
・バケットの選択・・・作成したバケットを選択
・バケット内のフォルダー・・・入力した場合はバケット内にフォルダを自分で作る必要がある

④管理画面の左下に「BackWPup」というメニューここにカーソルを当てて[ジョブ]をクリックし、作成したジョブにカーソルを当て「今すぐ実行」をクリックし手動実行し問題なくS3にバックアップとれるか確認する。

参考にしたサイト

両サイトとも非常にわかりやすく、困ることはありませんでした。

WordPressでバックアップを取る4つの方法(初心者向け)

10分で完了!UpdraftPlusを使ってWordPressをS3にバックアップする方法