運営しているサイトがいくつか増え、いろいろな事情を考え年内にサーバー移転をしたほうがいいなということになり、ついに移転することにしました。
サーバー移転も何度か経験しているけれど移転することで解決できることがあるなら、やってみたほうがいい、でもできるだけやりたくないと葛藤しながらも決意。このタイミングを逃したら1年後もう一度悩むことになるし。
WORDPRESS サーバーの移転手順
ざっくりいうと、下記のような流れになります。
- ①旧サーバーのデータのバックアップ
- ②旧サーバーのデータベースのエクスポート(SQL)
- ③新サーバーにデータアップロード
- ④新サーバーにデータベース作成してSQLインポート
- ⑥新サーバーのURL一括置換
- ⑦新Wordpressの調整
①サーバーのデータのバックアップ
これはFTPソフトを使うのですが、いつも使っているFFFTPだと大量のデータのダウンロードやアップロードにエラーが出ることが多く、というかもうエラーも出ないで勝手に固まってたりするので、フォルダごとに細かくダウンロードをしていくことになるのですが、これが思いのほか時間がかかります。
WinSCPというソフトがいいらしいとのことで、使ってみたらSFTPで接続できた場合驚くほどスムーズにいけました。
SFTP接続ができない場合はFFFTPとあまり変わらないみたい。
普段は慣れてるしFFFTPで行こうと思いますが、大量データのやりとりにはWinSCPがおススメです。
②旧サーバーのデータベースのエクスポート(SQL)
旧サーバーのphpAdminにログインして、データベースを選択し、エクスポートするのですが、とくに細かい設定を変えることなくデフォルトのままダウンロード。
.sqlの拡張子がついたデータがダウンロードされます。
データベースを選択せずにダウンロードしたsqlだとエラーになるので、必ず選択してください。
③新サーバーにデータアップロード
ダウンロードしたすべてのデータをアップロードします。
アップロードしている間に④のデータベースを作成するのですが、その際データベース情報が決定するので、wp-config.phpの情報を書き換えてアップロードします。
WordPressのデータを格納しているフォルダの一番上の階層にwp-config.phpがあります。
/** WordPress のためのデータベース名 */
/** MySQL データベースのユーザー名 */
/** MySQL データベースのパスワード */
/** MySQL のホスト名 */
を新サーバーの情報に変更して上書きアップロード。
④新サーバーにデータベース作成してSQLインポート
新サーバーにデータベースを作成します。できたてほやほやのときはテーブルなどもなにもなく空っぽの状態。ここに旧サーバーから先ほどエクスポートしたデータをインポートします。
そうすることでごっそりデータがコピーされるのですが、ドメイン名が変わる場合や、いったんテストサーバーに置いて修正してから公開する場合はデータの中で使われているドメイン名を置換しないと、新サーバーのWORDPRESSの管理画面にログインできなくなってしまいます。
なので、次のステップが必要になってきます。
⑥新サーバーのURL一括置換
これが重要かつ、はじめてだとつまづく山場です。
この記事がとっても参考になりました。
WordPress移行時にURLをSQLで直接一括置換はダメ! 「Search and Replace for WordPress Databases Script」を使おう
この、置換ツールのダウンロードの仕方で私はつまづきました。使い方よりもむしろここが山場だったかもしれない。
名前とメールアドレスをおそるおそる登録するとメールが届くので、そのメールの中にリンクが貼られずに書いてあるURLをブラウザのアドレスバーに貼り付けて実行するとダウンロードできました。
ボタンをクリックしたらダウンロードできるっていうかんじじゃなかったので、英語だけど届いたメールをしっかり読みましょう☆
「家電のマニュアルは読まない主義」とか言ってる場合ではない。
⑦新Wordpressの調整
ここまでできていれば、新WORDPRESSにログインできるはずです。
でも、サイトをチェックしてみるといろいろと不具合が。
まず、トップページはちゃんとみれるけれど、リンク先がどこも飛べない。
そんなときは、Wordpressの管理画面の設定→パーマリンク設定→変更を保存。何も変えなくて「変更を保存」ボタンを押すだけでリンク先が有効になります。
それから問い合わせフォーム、問い合わせられない。
先ほど一括置換したURLで、問い合わせフォームがらみのメールアドレスも置換されているので修正します。
以上で、新サーバーへWORDPRESSを無事移行できました!