前回書いた「Azure WebSitesのバックアップ方法」の補足記事です。
WordPressの運用にMySQLを使わず運用すると、データベース知識が無いWebデザイナーも運用が楽になって色々助かる!と思ったのでまとめます。
WordPressにMySQLは必須?
WordPressを使う場合、データベースが必要なので一般的にはMySQLを使うと思います。(本でも紹介されてたり)
ですが、この「nrjlog」はWordPressにも関わらずMySQLを使わずに運用しています。
以前、WordPressブログのお引っ越し記事でちょっと触れたのですが、「SQLite」というファイルタイプのデータベースを採用しています。
Azure WebSitesで本気でMySQLを構築して使うとなると、仮想マシンを使用する必要が有るため実質的にコストが高くなるキケンがあります。
(WebSitesで仮想マシンを使用せず使えるMySQLはclearDBという、予めチューニングしたMySQLを貸してくれるクラウドのものでアプリ的なイメージ)
なので、小~中規模サイトだったら「SQLite」を使った方が運用的にメリットが多いかなと思います。
SQLiteだと運用が楽!
個人的に、WordPressサイトのバックアップと復旧がすごく便利だと思いました。
WordPressで運用しているサイトのバックアップは通常であれば、
- FTPソフトで「アップロード画像」と「テンプレート」を個別にダウンロードする
- DBバックアップ用のプラグインを入れる
(もしくは手動でデータベースからバックアップを取る)
このような手順を取ると思います。
DBバックアップ用のプラグインは入れることでWordPress全体が重くなったり、バックアップを取るときは一旦サイトが止まるものもあるようですが、Azure WebSitesのバックアップは「ホットバックアップ」なので心配いりません。
SQLiteはファイルタイプのデータベース。
なので、データベースのみ個別にバックアップする必要があったり、バックアップ作成用のプラグインを入れたりする必要がありません。
SQLiteの特徴
- 小~中規模のサイト運営向き
- データベースに関する専門知識がいらない
- SQLiteはファイルなのでサーバ不要
- 完全バックアップデータの中に含まれる(何もしなくていい)
- 復旧したいときはFTPで該当ファイルをアップロードするだけ
WordPressでSQLiteを使う場合は、プラグインの「SQLite Integration」を使います。
またAzure WebSitesで設定できるバックアップ機能を一度設定してしまえば「毎日決まった時間に必ず1回バックアップ(データベースに書き込まれる内容も込)が作成」されるので、バックアップ忘れも防げて安心。
ただし大規模サイトには不向きなので、規模によってMySQLと使い分けましょう。
バックアップデータで復旧してみる
では実際にWordPressサイトを壊して復旧してみます。
※「WordPressの教科書2」のサイトデータを使用しています。
WordPress管理画面で投稿を削除
7件分の投稿を完全に削除してみます。
バックアップデータをダウンロードする
Azure WebSitesのバックアップデータは、BLOBストレージに保管されています。
以下の方法でダウンロードしておきます。
▼Windowsの場合はこちら
「Azure Storage Explorer」の設定方法
https://zuvuyalink.net/nrjlog/archives/1649
▼Macの場合はこちら
「Cyberduck(サイバーダック)」の設定方法
https://zuvuyalink.net/nrjlog/archives/1660
ダウンロードしたzipファイルを解凍してみると、「databese」というフォルダがあります。
中身はこんな感じ。これがSQLiteのファイルになります。
復旧してみる
WebSitesはFTPでファイルのアップロードができるので、FTPソフトを使います。
復旧の方法は簡単。先ほどのファイルを全てアップロードするだけ!
WordPressの管理画面で確認すると、削除したはずの投稿が復活しています。
ファイルのアップロードだけなので、サイトが止まったりもありませんでした。
このように、FTPで該当ファイルをアップロードするだけで簡単に復旧できます。
phpMyAdminとかWordPressの管理画面でインポートとかせずに、FTP操作だけですぐに復旧できるのはものすごく便利だなぁと思ったところです。
最後に
レンタルサーバーにもよると思いますが、バックアップをサーバーに置ける容量が決まっていたり保管日数が決まっている場合が多いかなと。
なので、バックアップデータをローカルに置いたとしても、PCが壊れた時復旧できない…なんて自体も考えられます。(外部にデータを逃し忘れとか)
Azureだったらそもそもクラウドなので、その辺りの心配はないですし、バックアップデータはずっとAzure BLOBストレージに保管され続けます。
WordPressであれば、メジャーアップデートしたけど何かの問題があって以前に戻さないといけない…といった場合でも、極論1年前の状態にも戻せたりするので、その辺りも保険と考えるといいのかなと。
個人的にはphpMyAdminとかを触らなくていいのがよかったですけどw
こんな感じで、データベース周りの知識が曖昧で実際何かあったときにものすごく困る…みたいな方はSQLiteがいいのではないかなぁと。
今回も @kazumihirose さんにご指導いただきました!ありがとうございました!