前回の記事ではWordPressのバックアップを取るところまで説明しましたが、バックアップは取っただけで終わり、ではありません。
ちゃんと機能するかどうか、リストアして元のWordPressとして動くかどうかを確認してこそ、バックアップとしての意味があります。
というわけで、今回はバックアップをローカル環境で動かす方法の紹介です。
1. XAMPPを使ってWordPressを動かす環境を整える。
WordPressを使っている人であれば誰でも知っている通り、WordPressにはPHPとMySQLを動かす環境が必要です。
その環境を簡単に構築できるのが「XAMPP」(ザンプ)です。
XAMPPはApache、MySQL、PHP、Perlの4つを1つのパッケージにまとめて一括でインストールできるようにしたもので、フリーウェアとして公開されています。
通常版の他にもUSBメモリーなどでも実行できるポータブル版が用意されていて、今回はこのポータブル版を使うことにします。
まずはXAMPP本体をダウンロードページからダウンロードします。
ダウンロードページにはファイルが色々ありますが、とりあえず容量の小さい7zip形式のファイル(2014/01 時点では「xampp-portable-win32-1.8.2-3-VC9.7z」ファイル)をダウンロードします。
拡張子「7z」ファイルの解凍には「7-Zip」を使います。
7-Zipももちろん無料で利用することができるソフトです。
7-Zipを使って、ダウンロードした7zファイルを解凍します(解凍先はとりあえずCドライブ直下)。
解凍が終わったら「xampp」フォルダにある「setup_xampp.bat」ファイルを実行します。
処理が自動的に終わり、「続行するには何かキーを押してください...」とのメッセージが表示されたら、メッセージ通り適当なキーを押して画面を閉じます。
次にMySQLの設定を一部変更します。
「C:\xampp\mysql\bin」にある「my.ini」ファイルを開き、「max_allowed_packet = 1M」となっている部分を「max_allowed_packet = 100M」に変更します。
これはバックアップからデータベースを戻すときに必要な設定で、バックアップしたデータベース(SQLファイル)のファイルサイズがこの値よりも大きいとエラーになります。
「xampp」フォルダにある「xampp-control.exe」ファイルを実行し、使用する言語を選んだ後コントロールパネルのApacheとMySQLの隣にある「Start」ボタンをクリックします。
このときWindows ファイアウォールによる警告が表示された場合は、「アクセスを許可する」ボタンをクリックしてください。
コントロールパネルのApacheの隣にある「Admin」ボタンをクリックして、XAMPPの管理画面を開きます。
「セキュリティ」画面を開き、「http://localhost/security/xamppsecurity.php」リンクをクリックします。
「MYSQL 項目: “ROOT” パスワード」からMySQLの管理者パスワードを設定します。
ここで設定するのはあくまでも管理者のものなので、WordPressで使っているデータベースのパスワードと一致させる必要はありません。
「rootのパスワードが変更されました。設定を有効にするために、MySQLを再起動してください。」と表示されたら、MySQLの管理者パスワードの設定は終了です。
指示に従ってコントロールパネルからMySQLを再起動(MySQLの隣にある「Stop」ボタンクリック後、再び「Start」ボタンクリック)します。
再びXAMPPの管理画面に戻り、Toolsにある「phpMyAdmin」をクリックします。
ユーザ名は「root」、パスワードは上記手順で変更したものを入力後、「実行」ボタンをクリックします。
phpMyAdminの管理画面が表示されるので、「ユーザ」をクリックします。
「ユーザを追加する」をクリックします。
「ログイン情報」にある「ユーザ名」と「パスワード」はWordPressで使っているデータベースと同じものを入力し、「ホスト」は「ローカル」を選択、「グローバル特権」にある「すべてチェックする」をクリック後、ページ最下部にある「実行」ボタンをクリックします。
ユーザの追加が終わったら、「データベース」から空のデータベースを作成します。
「データベースを作成する」の下にあるテキストボックスにはWordPressで使っているデータベースと同じ名前を入力します。
無事にデータベースを作成できたら準備は完了、後はバックアップからファイルとデータベースを戻すだけです。
phpMyAdminは終了させてください。
2. バックアップからXAMPP上にファイルとデータベースをリストアする。
まずはファイルです。
前回の記事で作成したバックアップファイル((日付)-bk_blog_dat.tar.gzファイル)を自分のPCにダウンロードし、7-Zipを使って「C:\xampp\htdocs」フォルダに解凍します。
※ 前回の記事でも書いていますが、バックアップを作成するスクリプト、作成したバックアップファイルをサーバー上に置きっぱなしにするのは非常に危険です。ファイルのダウンロードが終わり次第、速やかにこれらのファイルをサーバー上から削除してください。
解凍先にあるWordPressの環境設定ファイル「wp-config.php」ファイルをテキストエディタで開き、「DB_HOST」を「localhost」に変更して上書き保存します。
次にデータベースです。
ダウンロードしたバックアップファイル((日付)-bk_blog_db.sql.gzファイル)を7-Zipを使って適当なフォルダ(ここでは「C:\Files\sql」)に解凍します。
コマンドプロンプトから下記コマンドを実行して、解凍したsqlファイルからデータベースをリストアします。
C:\xampp\mysql\bin\mysql (データベース名) --user=(ユーザー名) --password=(パスワード) --default-character-set=utf8 < (sqlファイルのパス)
以上で作業は終了です。
後はブラウザーで「http://localhost/(WordPressのディレクトリ)/」を開けば、ローカル環境上でWordPressがちゃんと動作していることが確認できるかと思います。
(サイトのドメインを変更していないので、各リンクをクリックするとlocalhostではなくインターネット上の元のページが開いてしまうのですが、とりあえずは動作確認できます。)
これでとりあえず大事なブログデータのバックアップ~ローカル環境での動作確認までできたわけですが、これらの手順を毎回手作業で行うのはそれなりに手間が掛かりますので、今後時間が取れたら作業を自動化する仕組みを考えてみようと思います。
【編集後記】
WordPressのバックアップには「BackWPup」などの、作業を全部行ってくれる便利なプラグインもあるのですが、これらでバックアップを取ってしまうと、“バックアップからローカル環境でのリストア”すべての作業の自動化を考えた場合、IEオートメーションなどでWordPressを操作しなくてはならず、使い勝手の良いものになりそうにありません。そこで考えたのが今回の方法です。
これであれば自分の好き勝手に出来るので、たとえばVBAからでも作業の自動化が行えそうです。
(スケジュールを組むのであればPowerShellが向いてそう。)
何はともあれ一刻も早く手作業からの脱却方法を考えねば・・・。
この記事へのコメントはありません。