目次
こんにちは、後藤です。
ホームページを製作するとき、まずはテストサイトで作っていくことが多いと思います。
テストサイトで一通り作り終わってから、本番サイトに移行しますよね。
いざ本番サイトに移行するときに、WordPressを使わなかった場合はデータをまるごとコピーすればそれで済みましたが、WordPressの場合はデータをまるごとコピーしただけではうまくいかないんですね。
WordPressの場合は、データベースも正しく書き換えて移行する必要があります。
今回は、WordPressを完全に移行する方法を紹介します。
移行元の作業
移行元の作業は2つになります。
- データをすべてバックアップ
- データベースをエクスポート
データをすべてバックアップ
移行元のサーバーからWordPressのデータをすべてバックアップしてきます。
デスクトップなど、分かりやすい場所に落としておきましょう。
データベースをエクスポート
移行元のサーバーでphpMyAdminにログインし、データベースをエクスポートしてきます。
ログイン情報は、バックアップしてきたデータの中のwp-config.phpで確認できます。
phpMyAdminにログインしたら、WordPressのデータベースをすべて選択します。
次にエクスポートを選択し、エクスポート方法を詳細に変更します。
追加コマンドの「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」にチェックを入れます。
実行ボタンを押します。
SQLデータがダウンロードされます。分かりやすい場所に保存しましょう。
移行先の作業
移行先の作業は5つになります。
- MySQLデータベース・ユーザーを新規作成、登録
- SQLデータをインポート
- バックアップデータをアップロード
- wp-config.phpの書き換え
- 「Search-Replace-DB-master」でデータベースを更新
MySQLデータベース・ユーザーを新規作成、登録
移行先のサーバーで、MySQLのデータベースとユーザーを新規作成します。
新規作成したユーザーとデータベースを紐づけます。
SQLデータをインポート
新規作成したユーザーで、phpMyAdminにログインします。
新規作成したデータベースを選択します。
インポートを選択します。
エクスポートしたSQLファイルを選択してインポートします。
バックアップデータをアップロード
バックアップしていたWordPressデータを移行先のサーバーへアップロードします。
wp-config.phpの書き換え
アップロードした中のwp-config.phpの一部を書き換えます。
以下の項目を移行先の情報へ書き換えます。
・WordPress のためのデータベース名(新規作成したデータベース名)
・MySQL データベースのユーザー名(新規作成したユーザー名)
・MySQL データベースのパスワード(新規作成したユーザーのパスワード)
・MySQL のホスト名
「Search-Replace-DB-master」でデータベースを更新
今までの段階でWordPressデータをコピーしたり、SQLデータをインポートしたり、wp-config.phpを書き換えたりしてきましたが、これだけだとまだ完全に移行できてないんです。
トップページは開けますが、それ以外のページは開けません。
データベースのURL情報が移行前のままになっているからですね。
「Search-Replace-DB-master」で移行後のURL情報へ更新していきます。
まずは「Search-Replace-DB-master」をダウンロードしてきます。
製作者のサイトへアクセスし、Download Search Replace DBのところでチェックボックスをチェックし、必要情報を記入し、送られてきたメールからダウンロードします。
ダウンロードしてきたファイルを解凍し、WordPressフォルダ直下(wp-config.phpと並列)へアップロードします。
ブラウザから「新しいサイトのURL/Search-Replace-DB-master」へアクセスします。
このようなメニューが表示されます。
replaceに旧サイトのURL、withに新サイトのURLを記述します。
URLを記述する際は、最後に/を付けないように気をつけましょう。
「dry run」ボタンでデータベースの書き換えのテストができます。
「live run」ボタンでデータベースの書き換えを実行します。
最後に、「delete me」ボタンで「Search-Replace-DB-master」をサーバーから削除します。
削除しないと外部からデータベースの書き換えが可能なままになってしまっているため、セキュリティリスクが残ります。
これで、WordPressの移行作業は完了です。
終わりに
今回は、WordPressの移行作業について解説しました。
WordPressはデータベースが絡んでくるので、移行がちょっとややこしいですね。
「Search-Replace-DB-master」を使用する際には、URLの最後に/を付けないようにすることと、「delete me」ボタンで「Search-Replace-DB-master」をサーバーから削除することは忘れないようにしましょう。