All in One WP Migration に救われた話

昨年末、業務を請け負っているクライアントからとあるサイトのプチリニューアル案件があり、その際に私の方から「サーバの環境をいったん整えたい」と話をしたところ、クライアントからは特に条件はなく「やりたいようにやって良い」ということで仕事を進めていました。
今回はその時に発生したトラブルから、データベース(というかサイトそのもの)の復旧までお世話になったプラグインの紹介をします。

異常事態発生

WordPress のサイトだったので、一般的な方法でデータベースのバックアップをとり、SFTP 経由で WordPress の Web データもダウンロード。
サーバの環境をリプレースしたあとで、バックアップしてあったDBのデータを Adminer を使ってアップロードしようとしたところ、

クエリーのエラー (1064): Syntax error near ‘PK’ at line 1

というエラーが発生。
SQLデータから “PK” という文字列を探したり、いろいろ調べて考えられる限りのことをことを試したのだけれど結局原因がつかめず。
リプレース作業中は CPI のサーバにデータを移行して作業中もサイトを閲覧できる状態にしてあったので、慌てず落ち着いて、CPI にアップロードしてあるデータをすべてダウンロードして同じ作業をしてみるも、結果は

クエリーのエラー (1064): Syntax error near ‘PK’ at line 1

と変わらず。
ただ、'PK???' at line 1と文字化けらしき表記に変わっていたことがあったけど、今回それは関係なさそうで。

神プラグインとの出会い

途方に暮れかけたところで、翌日ようやく「イチかバチかで、バックアップ系のプラグインに頼ってみるのもありなのでは」という発想に思い至り、ふだんからバックアップは取っているものの、今回は今起こっていることにピッタリのプラグインがないかと探してみることにしたのです。
検索語句は忘れたけれど、「これ昨日も見たな…」というプラグインがあった。それが All in One WP Migration でした。
前日、半ばパニックになっている頭で調べ物をしていて、「 “All in One SEO Pack” と名前が似てるから嫌」という理由であまり興味を持たなかったプラグイン。All in One SEO Pack が不評な理由とは全然結びつかない…(^_^;)
使ってみると、「なにこれ神じゃん!!」というレベル。
結論としては、このプラグインのお陰で無事、CPI に待避してあったデータからバックアップして問題なくサーバのリプレースとサイトのリニューアルを完了させることができました。

All-in-One WP Migration でできること

このプラグインの名前の正式な表記は、 “All-in-One WP Migration”。
まず基本的に何ができるのかを書いていきます。今回は作業しながらの執筆ではないため、細かい部分のスクリーンショットは省いておりますがご了承ください。

エクスポート

WordPressのデータを丸ごと別の環境にバックアップできる「エクスポート」。
一度の操作で、WordPress本体、プラグイン、テーマ、そしてデータベースと、WordPress の Web サイトに必要なデータをまるごとエクスポートしてくれます。そしてエクスポート時に自動的にサーバにバックアップも取ってくれるスグレモノ。

「高度なオプション」で様々なオプションを選択することができます。
エクスポート先も充実していて、ローカルダウンロードはもちろん、FTP、Dropbox、Google Drive、Amazon S3、OneDrive、Box、Mega の中から選ぶことが可能です。(有料オプション)

ダウンロードするとドメイン名-日付-時間-xxx.wpressというファイルが生成されます。

エクスポート

インポート

サーバを移転した後やデータの復旧をしたいときに使用する機能。
ダウンロード時に生成された .wpress ファイルをそのままドラッグ&ドロップするとインポートが始まります。
インポートが終了し、その後の処理が可能になると「データベースとWeb上のファイルをまるごと書き換えるが問題ないですか?」という旨の英語のメッセージが表示されるので、問題なければそのまま進めます。

なお、通常は無料版でインポートできる最大ファイル容量が 512MB までとなっています。
下の画像では、 「Maximum upload file size:無制限」という表記がありますが、これは有料オプションのエクステンションを適用しているためです。こちらについては、後述します。

インポート

バックアップ

エクスポートした際のデータがWeb(WordPressの wp-content ディレクトリ配下)に保存されます。
画像を多用するサイト、撮って出しの写真を扱うサイトなどではファイル容量が大きくなりますので、サーバ容量にご注意ください。
私の場合、対象のサイトでは撮って出しの写真を扱うことが多く、1つのファイルで大きいと数十MBというファイルが多くあるため、この時点で700MB〜800MBという大きさになっていました。

バックアップ

多彩なオプション

このプラグインは、有料エクステンションを購入することで機能を追加することができます。
先に書いたとおり、このプラグインは無料版で512MBまでのファイルをインポートすることができますが、それ以上の大きさのファイルはエクステンションを購入し、プラグインディレクトリにアップロード、有効化する必要があります。
ここで、エクステンションの種類を紹介します。

殆どがエクスポート先を追加するためのエクステンションですね。
ローカルファイルとしてダウンロードする場合は問題ないかもしれません。
ただ、私が重宝したエクステンションが2つありますので、すごく簡単ではありますが紹介したいと思います。

Unlimited Extension

先ほどから何度か書いている、インポートの容量制限をなくすエクステンションです。
ファイル容量が大きいサイトでは必須。69ドルです。
私が購入した時、日本円でおよそ8,000円でした。

Multisite Extension

これとは別の件(このブログの移転)で使用したエクステンション。
このブログは WordPress のマルチサイト機能で複数のブログを作っているのですが(ほかのブログは全く動いていませんが…)、そのマルチサイト機能に対応させるためのエクステンションです。このエクステンションを入れることで、 Unlimited Extension の「容量無制限」の機能もついてきました。
199ドル、私が購入した時点で日本円でおよそ21,000円でした。

注意事項

今回の事例は、データベースのテーブル名にサーバ特有の接頭辞がつかないパターンを紹介しています。
廉価なレンタルサーバでは多くの場合、ユーザーを識別するための接頭辞が自動的に付与されます。
接頭辞が付与されないサーバから付与されるサーバへの移行を行う場合には、別途 Database Search and Replace Script in PHP 等で処理をする必要がありますので、そういった環境でサーバの移行を実施する場合には十分にご注意ください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です