今回の記事は最悪の事態が発生しても確実に復元できる「バックアップ」の手順について説明します。
もしレンタルサーバーで時間を手間をかけてサイトを運営しているなら積極的にリスク回避をしましょう。
レンタルサーバーを運営する中で様々なリスクがある
レンタルサーバーを借りて時間と手間をかけてサイトを作って運用する中で様々なリスクがあります。
- 操作ミスでデータを消してしまう
- レンタルサーバーのサービスが終了してしまう
- レンタルサーバーの大規模障害でデータがすべて消えてしまう
- パスワードクラッキングでアカウントが乗っ取られる
- 攻撃を受けてウィルス感染してしまう
などなど、最悪の事態を考えるときりがないですが、突然レンタルサーバー上のデータがすべて消えたとしても、最低限数日前の状態まで戻せるなど対策を取りましょう。
今回は、具体的なWordPressのバックアップ方法について説明しますが、WordPress ではない HTML サイトのバックアップ方法についても参考になると思います。
サイトのバックアップを取っておくことのメリット
バックアップのメリットなんて数えきれないほどありますし、デメリットはなくメリットしかないのですが、いくつか挙げてみましょう。
- レンタルサーバーに障害があっても元通りに復旧できる
- 操作ミス・障害でデータが全部消えてもサイトを続けることができる
- いつでも復旧できればサイトの運営を諦めなくて済む
- 今より良いサービスのレンタルサーバー会社が見つかればすぐに引っ越せる
- バックアップがあることでサイトを運営する上で精神的に楽になる(失う心配をしなくてよい)
逆にバックアップを取らないことによるデメリットは・・・
- 他に格安で高スペックのレンタルサーバー会社があっても引っ越せずにいつまでも高い月額使用料を支払うことになる
- レンタルサーバーに障害があるとデータがすべて消え、今まで大切に時間と手間を掛けて育ててきたサイトが一瞬で終わる
- もし障害が発生したらどうなるだろうといつも心配しなければならない
- サイトを運営していても、いつまで経っても中途半端な感覚が残る
- 大胆なデザインの変更・改善ができなくていつまで経っても古い感じのサイトのまま
何よりもバックアップを取らないと「精神的によくない」です。
この機会にぜひバックアップを取りましょう。
サイトのバックアップの考え方・設計
まずはどうやってサイトのバックアップを取るのか?最初に設計をしましょう。
- 何をバックアップするか?
- 何をバックアップしないか?
- 頑張れば戻せるもの・頑張っても戻せないもの
- どのタイミングでバックアップを取るか?
- どの頻度でバックアップを取るのか?
- バックアップ先のディスクの容量はどれくらいあるのか?
このように一言「サイトのバックアップ」と言っても決めなければいけないことがたくさんあります。
一番重要な問題点 → 人間の習性で毎日同じことができない
サイトのバックアップを設計する上で、最初に確認しなければいけないポイントがあります。
それは「人間は忘れる」「人間は面倒なことはやらない」ということです。
例えば、「毎日バックアップを取りましょう。そのためには毎日ログインして、このボタンをクリックしましょう」というシステムを作ったとしても、最初の2日間くらいしかできません。
人間にとって「毎日決まった時間に決まったことをやる」というが非常に苦手なのです。
だからツールを使って、自動的にバックアップを取るというシステムを作っておく必要があります。
サイトのバックアップを具体的に落とし込んでいく
とにかく最初は正確性など考えずに書き殴りましょう。
自分の環境や考え方に合わせて自由に決めましょう。
【サイトバックアップの設計例】
- 何をバックアップするか?
データ、記事、プラグイン、画像(△)とか。
- 何をバックアップしないか?
今までサイトにアップロードした画像はパソコンの中に入っているからいらない。
それに毎回画像をバックアップするのはディスクがもったいないし、そんなにパソコンのディスク容量がない。
- 頑張れば戻せるもの・頑張っても戻せないもの
画像はパソコンの中にあるから、頑張れば戻せる。
でも記事や構成は頑張っても戻せない。(覚えていない)
プラグインは頑張れば戻せるかもしれないが、そもそも何のプラグインをインストールしていたか思い出せないと思う。
- どのタイミングでバックアップを取るか?
定期的に勝手にバックアップを取っておいてくれるシステムがベスト。
別に朝でも昼でも夜でも深夜でもいつでも問題なし。
- どの頻度でバックアップを取るのか?
システムが勝手にバックアップを取ってくれるなら毎日でもいい。
- バックアップ先のディスクの容量はどれくらいあるのか?
パソコンのディスク容量がない。もしくは少ない。
だから画像のバックアップは取れない。
契約しているレンタルサーバーでほとんど使用していないレンタルサーバーがある。
使わないでお金だけ払い続けるのはもったいないので「バックアップサーバー」として利用したい。
レンタルサーバーは「リトルサーバー」でディスク容量は20GBもあるので、これを利用する。
毎日フルバックアップを取ってもディスク容量的に全然余裕。
しかしシステムに負荷を掛けたくないので、フルバックアップは取らない。
画像を除外して毎日バックアップを取る。
ディスク容量に余裕があるから、バックアップの保持期間は1ヶ月程度(30日間程度)で毎日バックアップを取る。
1ヶ月以上たったバックアップは自動的に削除する。
それくらいなら画像のないテキストベースのバックアップになるのでディスク容量的に問題がなさそう。
こんな感じで思ったことを大雑把に適当に落とし込んでいきましょう。
(完璧じゃなくても全然問題ありません)
サイトのバックアップ設計を数値に落とし込む
私の設計では以下の表のようになりました。
バックアップの対象データ | バックアップ対象外のデータ | バックアップのタイミング | バックアップの保存期間 | バックアップの頻度 | バックアップ先 | バックアップの形式 |
---|---|---|---|---|---|---|
・記事 ・構成 ・DB | 画像 | 夜中の3時 | 30日間くらい | 毎日1回 | リトルサーバー | FTPでアップロード |
まずはこの設定でバックアップのシステムを設定してみましょう。
そして運用してみて「もっとこうした方がいい」というアイデアが浮かんだら改善することにします。
どうやって実現するのか?
今回は「WordPress」のサイトを例に考え、バックアップシステムを設計します。
要件を満たすWordPressバックアップのプラグインで「BackWPup」を見つけました。
なぜ「BackWPup」を選んだのか?
- 要件を満たしている
- 細かく設定できる
- 画像を除外できる
- FTPで別のレンタルサーバーにアップロードできる
- スケジューリングができる
- 無料
サイトバックアップシステムの構成図
今回は、下図のようなバックアップシステムを構築します。
リトルサーバーは格安レンタルサーバーなのでバックアップ先におすすめ
リトルサーバーは「月額150円~」でディスク容量「20GB」利用することができる格安レンタルサーバーです。
リトルサーバー
格安レンタルサーバーなのでバックアップファイルの保存先としてお勧めしていますが、「月額150円~」でディスク容量「20GB」の「ミニプラン」でも「MySQL」のデータベースが 3 つ作れるので WordPress を 3 つインストールすることができます。
つまり「メインのレンタルサーバー」としても利用することができます。
以下の記事は、リトルサーバーの新規契約をして WordPress をインストールして独自ドメインを割り当てる手順です。
【リトルサーバー】リトルサーバーに WordPress をインストールして、お名前.comで取得した「ドメイン」を割り当てる手順【図解】
サイトのバックアップシステムを構築する手順
どうすればいいのか洗い出しが終わったら、後は構築するだけです。
システムを構築する手順の概要
どのように設定をすればいいのか固まったら、後は簡単です。
- BackWPupのインストール
- BackWPupの設定
- 動作検証
以上です。
1.BackWPupのインストール
1.WordPressにログインして、左側ペインの「プラグイン」-「新規追加」をクリックします。
2.右上の入力欄に「BackWPup」と入力し、「BackWPup-WordPress Backup Plugin」が表示されたら、「今すぐインストール」をクリックします。
3.「BackWPup-WordPress Backup Plugin」のインストールが完了したら「有効化」ボタンをクリックして有効化します。
以上で「BackWPup」のインストールは完了です。
2.BackWPupの設定
1.左側ペインより「BackWPup」-「新規ジョブを追加」をクリックします。
2.バックアップの設定をします。
ジョブ名は分かりやすい名前を付けてください。
ここでは分かりやすいように「定期バックアップ(FTPでリトルサーバーへ)」と名付けました。
※人間は面倒くさがりだと思うので(私だけかもしれませんが)、後程振り返った時に一瞬で思い出せるように多少長くなっても分かりやすく名付けておく方がいいです。
バックアップの対象ですが、後程画像ファイルを省く等細かく設定するので、ここでは全部にチェックを入れておきます。
アーカイブ名はデフォルトのままでいいです。
アーカイブ形式は「Zip」にしましょう。
今回は「エックスサーバー」のサイトのデータを「リトルサーバー」へFTPでアップロードするので「FTPにバックアップ」にチェックを入れます。
ここまで設定したら「変更を保存」ボタンをクリックします。
3.「スケジュール」タグをクリックします。
4.ジョブスケジュールを設定します。
「ジョブの開始方法」は「WordPress の cron」を選択します。
※cronとは定期的にバックアップなどのジョブを実行するツールです。
実行時間のスケジュールですが、デフォルトで毎日午前3時に設定されているので、このままのスケジュールで設定します。
「変更を保存」ボタンをクリックします。
【参考】
cronの使い方と設定方法
5.「ファイル」タブをクリックします。
6.バックアップ対象のフォルダーやファイルを設定します。
「WordPressをインストールしたフォルダーをバックアップ」はデフォルトの設定(全部バックアップを取る)にします。
(「除外」にチェックが入っていないので、バックアップを取ります)
「コンテンツフォルダーをバックアップ」も、デフォルトの設定にします。
「プラグインのバックアップ」もデフォルトの設定(全部バックアップを取る)にします。
「テーマのバックアップ」もデフォルトの設定(全部バックアップを取る)にします。
※不要なテーマがあったら削除しておきましょう。
今回は、ディスク容量を考慮して画像ファイルのバックアップを取得しないので、「バックアップから除外するファイル/フォルダー」に「.png」「.jpg」「.jpeg」の拡張子を追加します。
※「.(ドット)」を忘れないようにしましょう。
「変更を保存」ボタンをクリックします。
7.「宛先:FTP」タグをクリックします。
8.FTPの設定をします。
「FTPサーバー」は指定のサーバー名を入力し、「ポート番号」も指定のポート番号を設定します。
※FTP通信の場合、通常は21番ポートを利用しますが、レンタルサーバーによってはFTPのポート番号を変えていることがあるので、もしつながらなかった場合は各レンタルサーバーのサイトを確認してください。
「ファイルを格納するフォルダー」は、適宜分かりやすいフォルダー名を設定します。
「ファイルを削除」は、今回は30日間バックアップを保存するので、ファイル数を「30」に設定します。
「FTPパッシブモード」は、デフォルトで「FTPパッシブモードを使用」にチェックが入っているのでそのままにします。
最後に「変更を保存」ボタンをクリックします。
【FTPの基本】 「アクティブモード」と「パッシブモード」の違いとは?
【初心者向け】FTPとは?
以上で、バックアップの設定は完了です。
3.動作検証
最後に動作確認をしましょう。
BackWPupの利点は、「すぐに実行」をクリックするとすぐにバックアップを取得する機能があるところです。
1.左側ペインより「BackWPup」-「ジョブ」をクリックします。
2.先ほど設定したバックアップジョブ(定期バックアップ(FTPでリトルサーバーへ))の「今すぐ実行」をクリックします。
3.エラーが出力されずに正常にバックアップが完了したことを確認します。
※エックスサーバーでWordPressのバックアップを取得して、リトルサーバーにFTP接続してデータをアップロードする一連の作業が、たったの8秒で完了しました。
4.リトルサーバーにログインしてデータがアップロードされていることを確認します。
新しく「backup_from_xserver_rental」フォルダーができていることが確認できます。
「backup_from_xserver_rental」フォルダーの下にバックアップができています。
バックアップはうまく行っています。
以上で、サイトバックアップのシステム構築は完了です。
まとめ
意外と簡単に本格的なサイトバックアップシステムが構築できました。
ひょっとしたら一般的な企業クラスでもここまでのバックアップシステムを構築していないかもしれません(笑)
最近のレンタルサーバーは低価格でディスク容量が数十GB、数百GBもあるプランやサービスが多いです。
そのため、バックアップ用に1つレンタルサーバーをレンタルしてもいいと思います。
格安レンタルサーバーをまとめています。
WordPressが使える格安レンタルサーバー一覧
今回バックアップ先として利用した「リトルサーバー」は、20GBで毎月150円程度なのでコストパフォーマンスが非常にいいです。
(ちなみにMySQLも使えてこの価格です)
今回、エックスサーバーとリトルサーバーを組み合わせて、下図のような本格的なバックアップシステムを構築しました。
コメント