【WordPress】本番環境(さくらレンタルサーバー)上のサイトを、ローカル環境(XAMPP)へ移行する方法

以前、ローカル環境で作成したサイトを本番環境に移行する作業は「【WordPress】ローカル環境(XAMPP)で作成したサイトを、さくらレンタルサーバーへ移行する方法」で試しましたが、今回は本番環境(さくらレンタルサーバー)からローカル環境(XAMPP)にデータ移行してみたいと思います。

 

WordPressの本番環境をローカル環境に移行するまでの流れ

  1. 本番環境のDBをエクスポートする
  2. 本番環境からWordPressファイルをダウンロードする
  3. 本番環境のDBの内容をローカル環境用に書き換える
  4. ローカル環境に新しくDBを作成する
  5. ローカル環境に新しく作成したDBに本番環境のDBをインポートする
  6. wp-config.phpファイルを修正する
  7. 本番URLをローカルURLに書き換える
  8. ログインして記事を一通り確認する

 実行環境紹介

ローカル環境: XAMPP(バージョン:1.8.3-5)

本番環境  :さくらレンタルサーバー

1.本番環境のDBをエクスポートする

Ⅰ.さくらインターネット サーバコントロールパネルにログイン

Ⅱ.アプリケーションの設定>データベースの設定>管理ツールログイン

(パスワード忘れた場合は、wp-config.phpを参照)

Ⅲ.phpMyAdminログイン>エクスポート対象のデータベースを選択>エクスポートタブ

以下の通りに設定し、右下「実行」を押下

From_HONBAN_to_XAMMP_000001

2.本番環境からWordPressファイルをダウンロードする

Ⅰ.teratermでサーバにログイン

Ⅱ.対象WordPressディレクトリを圧縮

圧縮例)zip -r [圧縮後ファイル名] [対象WordPressディレクトリ]

Ⅲ.FTPソフトを使用しⅡで圧縮したファイルをローカルにダウンロード

Ⅳ.ダウンロードしたファイルを解凍後、htdocs内(xamppインストールディレクトリ\htdocs)に格納する

3.本番環境のDBの内容をローカル環境用に書き換える

Ⅰ.「1.本番環境のDBをエクスポートする」でダウンロードしたsqlファイルを開く

Ⅱ.本番環境のドメイン名/フォルダ名を「localhost/htdocs内に格納したWordPressフォルダ名」に置換する

Ⅲ.保存して終了(インポート時に使います)

(2015/7/9追記:シリアライズデータ対応)

sqlファイルを直接置換するとシリアライズ化されたデータの修正が行われずに、一部機能が動作しなかったりデザインが表示されない可能性があるという事が発覚しました。その為、上記手順は不要となります。

詳細はこちらの記事をご参照下さい「WordPressで環境を移行する場合のポイント(2)シリアライズされたデータ」

 

4.ローカル環境に新しくDBを作成する

Ⅰ.コマンドプロンプトを管理者モードで起動

Ⅱ.XAMPP起動 > mysql、Apache起動

Ⅲ.mysqlにログイン

Ⅳ.DB新規作成、権限付与

 

5.ローカル環境に新しく作成したDBに本番環境のDBをインポートする

Ⅰ.XAMPP > Admin からphpMyAdminにログイン

Ⅱ.左サイドメニューから先ほど作成したDBを選択

Ⅲ.インポートタブ>インポートするファイル>ファイル選択から「3.本番環境のDBの内容をローカル環境用に書き換える」で作成したsqlファイルを指定>実行

(2015/7/9追記:シリアライズデータ対応)

Ⅲ.インポートタブ>インポートするファイル>ファイル選択から「1.本番環境のDBをエクスポートする」でダウンロードしたsqlファイルを指定>実行

 

<以下メッセージが表示されてインポート出来ない場合>

「インポートするデータを受信できませんでした。ファイル名が送信されていないか、ファイルサイズが PHP の設定で許可された最大値を超えています。FAQ 1.16 をご覧ください。」

・xamppインストールディレクトリ\xampp\php\php.ini を 開く

・「; Maximum allowed size for uploaded files.」行以下の値を2Mから10MB等に変更

変更前)upload_max_filesize = 2M

変更後)upload_max_filesize = 10M 

・XAMPP>mysql、Apache 再起動後に再度「手順.Ⅲ」を実行

 

6.WordPressフォルダ内のwp-config.phpファイルを修正する

以下行を必要に応じて修正

/** WordPress のためのデータベース名 */
define(‘DB_NAME’, ‘必要に応じて修正‘);

/** MySQL データベースのユーザー名 */
define(‘DB_USER’, ‘必要に応じて修正‘);

/** MySQL データベースのパスワード */
define(‘DB_PASSWORD’, ‘必要に応じて修正‘);

 

ホスト名はlocalhostに修正

/** MySQL のホスト名 */
define(‘DB_HOST’, ‘localhost’);

7.本番URLをローカルURLに書き換える

(2015/7/9追記:シリアライズデータ対応)

以下のスクリプトを使用し本番URLをローカルURLに書き換えていきます。

Search and Replace for WordPress Databases Script

 

Ⅰ.上記サイトにアクセスし「PROBLEMS? TRY V2.1.0 STABLE」を押下し「searchreplacedb21.zip」をダウンロードします。ipo_000021Ⅱ.zipファイルを解凍すると「searchreplacedb2.php」が格納されているので、こちらを「wp-config.php」と同階層に配置します。

ipo_000022

Ⅲ.ブラウザのアドレスバーに「http://localhost/WordPressディレクトリ名/searchreplacedb2.php」を入力しEnterキーをクリックします。すると以下の画面が表示されるので「Submit」ボタンをクリックします。

ipo_000013

Ⅳ.以下の画面が表示されます。必要事項は自動的に入力されているため、そのまま「Submit DB details」ボタンをクリックします。

ipo_000014

 

Ⅴ.Tablesを全て選択した状態で「Continue」ボタンをクリックします。

ipo_000015

Ⅵ.「OK」ボタンをクリックします。

ipo_000016

 

Ⅶ.上のテキストボックスに置換対象文字列(本番環境ドメイン名/WordPressディレクトリ)を入力し、下のテキストボックスに置換後の文字列(ローカル環境ドメイン名/WordPressディレクトリ)を入力したら「Submit Serch string」ボタンをクリックします。

ipo_000017

 

Ⅷ.「OK」ボタンをクリックします。
ipo_000018
Ⅸ.「Completed」の文字が表示されたら完了です。
ipo_000019

8.ログインして記事を一通り確認する

「http://localhost/WordPressディレクトリ名」にアクセスして問題無ければ以上で完了です。お疲れさまでした。

 

(2015/10/19 追記)

メディアファイルに日本語名が使われている場合、そのファイルがデータ移行出来ていない場合があります。メディアライブラリの画像を確認し、非表示になっている場合は手動で対象ファイルをアップロードする必要があります。

 

以上

  • このエントリーをはてなブックマークに追加