WordPressのサーバー移転に関する備忘録

スポンサーリンク
スポンサーリンク
データセンター

自分の管理しているサイトの一部をサーバー移転したんですが、その際にハマった部分があったので備忘録として残しておきます。

WordPressのサーバー移転手順

現在の環境のまま、サーバーを移転する際の手順は以下の通りです。ドメインやURLを変更する場合でも最後に一括して変更するので手順は変わりません。

旧サーバーからファイルのダウンロード

現在使用しているサーバーからファイルをダウンロードします。FTPクライアントでそのままダウンロードしても良いですが、SSHでログインできるのであれば、一度圧縮してからダウンロードしたほうが早いです。圧縮するコマンドは以下の通りです。

tar zcvf hoge.tar.gz ./hoge

旧サーバーからデータベースのエクスポート

PhpMyAdminを使って データベースをエクスポート します。

  1. PhpMyAdminより エクスポート対象のデータベース をクリックします。

    phpMyAdmin「TOP」

  2. データベースのテーブル一覧が表示されたら フォーマットSQL であることを確認し エクスポート をクリックします。

    phpMyAdmin「データベース→エクスポート」

  3. エクスポート画面が表示されたら 実行 をクリックします。

    phpMyAdmin「データベース→エクスポート→実行」

  4. ファイルがダウンロードされたら完了です。

新サーバーでデータベースのインポート

PhpMyAdminを使ってデータベースをインポートします。

  1. PhpMyAdminより インポート対象のデータベース をクリックします。

    phpMyAdmin「TOP」

  2. データベースのテーブル一覧が表示されたら インポート をクリックします。

    phpMyAdmin「データベース→インポート」

  3. インポート画面が表示されたら エクスポートしたファイルを選択実行 をクリックします。

    phpMyAdmin「データベース→インポート→実行」

    『#1273 – Unknown collation: ‘utf8mb4_unicode_ci’』とエラーメッセージが表示される場合には’utf8mb4_unicode_ci’ → ‘utf8_unicode_ci’と全置換します。

    『#1115 – Unknown character set: ‘utf8mb4’』とエラーメッセージが表示される場合には’utf8mb4’ → ‘utf8’と全置換します。

  4. “インポートは正常に終了しました。~”と表示されたら完了です。

    phpMyAdmin「データベース→インポート→完了」

新サーバーにファイルをアップロード

新サーバーにファイルをアップロードします。FTPクライアントでそのままアップロードしても良いですが、圧縮してダウンロードした場合には圧縮ファイルをアップロードしてSSHでログインし展開(解凍)したほうが早いです。展開のコマンドは以下の通りです。

tar zxvf hoge.tar.gz

ドメインの操作

ドメインやURLを変更しない場合

旧サーバーから新サーバーへドメインが指すサーバーを変更します。

ドメインやURLを変更する場合

新サーバーでの運用の際にドメインやURLを変更する場合にはデータベースの内容を書き換えます。ただし、単純に変更すると不具合が起きるので専用のツール(PHPスクリプト)を用います。

  1. DATABASE SEARCH AND REPLACE SCRIPT IN PHP」へアクセスし スクリプト をダウンロードします。

    Web「DATABASE SEARCH AND REPLACE SCRIPT IN PHP」

  2. ダウンロードしたファイルを展開(解凍)したら wp-configと同じパスディレクトリ(Search-Replace-DB-master)ごと アップロードします。

    FTPクライアント「WordPressディレクトリ」

  3. ブラウザから アップロードしたディレクトリ (http://yourdomain/wp/Search-Replace-DB-master/など)にアクセスし 必要事項 を入力し、actions より live run をクリックします。
    search/replace replaceに 旧アドレス(http://old-site.comなど)、withに 新アドレス(http://new-site.comなど)を入力します。
    databese wp-config.phpと同じパスに配置していれば自動的に読み込まれます。
    tables 特に問題がなければ all tables をチェックします。

    DATABASE SEARCH AND REPLACE SCRIPT IN PHP「実行」

  4. 処理内容の表示が終われば完了です。

ドメインやURLの変更は以上です。

まとめ

MySQLのバージョンがあっていないとエクスポートしたファイルがそのままインポートできません。特に移行元のサーバーの方がバージョンが新しい場合にはエラーになる可能性が高いので移行先のサーバーはMySQLなどのバージョンには注意してください。

Pickup! WordPressの運用に特化したレンタルサーバー『wpXレンタルサーバー』

スポンサーリンク

フォローする