*

WordPressのお引越し!丸ごと全部移行メモ

投稿日:2014/12/18 最終更新日:2014/12/18

JCOM の障害のあおりを受け、このブログも2日ほど世界から消え去っていた。
自宅サーバ(自分のではない)のスペック的には名残惜しいけど、Google先生に怒られてもアレなのでとりあえず VPS に退避した。

WordPress の引越しは2回目でそこそこすんなり終わったけど、一応やったことをメモしておきたいと思う。

今回は自宅サーバからカゴヤVPSへの移行だけど、条件さえ同じであれば流れは同じで、サーバなどはあまり問題にならないと思う。

条件は移行後も同じURLで公開すること。
またMySQL DBを自由にできること。
(今回はphpmyadminを使った)

 

移行元サーバのデータベースをエクスポートする

WordPress 用に使っているデータベースを丸ごとエクスポートする。

phpMyAdmin にログインし、左のメニューフレームから WordPress 用のデータベースを選択する。
よくわからなければ順にクリックし、wp_ で始まるテーブルがずらりと並んでいるのがそれだ。
(これが良くわからない人はそもそも接頭語など変えていないだろう)

 

データベースを選択すると、今度は右フレーム上部に色々メニューがあるのがわかる。
その中から「エクスポート」メニューを選び、エクスポート方法は詳細を選んだ。

詳細を選ぶと色々なオプションが表示されるが、生成オプションの追加コマンド、「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT コマンドの追加」を選んだ。

そのまま下にある「実行」ボタンをクリックすることで「DB名.sql」という名前でファイルがダウンロードされる。

 

もしも移行先のレンタルサーバでダウンロードしたファイルが大きすぎてインポートできなかった場合や、アップロード可能な最大サイズが判らない場合、あるいは最大サイズがとても小さい場合などは、圧縮メニューで「bzip」を選択しよう。

bzip が恐らく最も小さくなる。
これでも大きすぎたらレンタルサーバだとどうしようもないかも。

もし移行先が自宅サーバやVPSであれば php.ini が触れるので問題ない。

 

移行元サーバのファイルをダウンロードする

移行元サーバにある WordPress がインストールされているフォルダの中身を全てダウンロードする。

この時に特別パーミッションを変更したディレクトリがあればパーミッションをメモしておく。
よくあるパターンとしては、wp-content とその中にある cache,plugins,themes,upgrade,uploads など。

 

移行先のサーバにファイルをアップロードする

先ほどダウンロードしたファイルを新しいサーバに全てアップロードする。

パーミッションを変更していたディレクトリがあれば元に戻す。
(パーミッションはサーバによるためエラーが出たらここが1つ疑うポイント)

ここまででアップロードされているファイルは移行前のサーバと全て同じになる。

 

移行先のサーバーでデータベースの作成とインポート

コンテンツなどは全てデータベース上にあるので、データベースを作成して移行元サーバと全く同じようにしてやる。

phpMyAdmin にログインし、データベースを作成する。
この際作成する「データベース名」は、WordPress のインストールフォルダにある wp-config.php 内に書かれているDB名と同一にする必要がある。
(というかそれが最も楽)

データベースの作成は、phpMyAdmin にログイン後、右側のフレーム上部の「データベース」メニューから作成できる。

phpMyAdminでデータベース作成

 

移行前のサーバと同名のデータベースを作成したら、そこにエクスポートしてきた「DB名.sql」ファイル(もしくは圧縮ファイル)をインポートする。

左側のメニューフレームから作成したDBを選び(重要)、右側のフレームの上部メニューからインポートを選択する。

(作成したデータベースをクリック ※画像の例では囲まれた部分)
作成したデータベースを選択

(選択後、インポートをクリック)
phpMyAdminインポート

 

ファイルの選択からエクスポートしてきた「DB名.sql」ファイル(もしくは圧縮ファイル)を選択する。

選択したら他の項目はそこままで「実行」をクリックしたらインポートされる。
ここまででデータベース名とその中身は移行前のサーバと同じ状態になる。

 

MySQLユーザの作成とアクセス権の付与

データベースは以前と同じ状態になったので、それを操作するユーザと、操作する権利の付与を行う。

ここ作成する「ユーザ名」も、WordPress のインストールフォルダにある wp-config.php 内に書かれているユーザ名と同一にする必要がある。

まずインポート時と同じように、左側のメニューフレームから作成したデータベースを選び、右側のフレーム上部の「特権」メニューを選択する。

下部に「新しいユーザを追加する」とあるのでクリックし、wp-config.php に書かれた情報に沿ってユーザを作成する。

つまり、「ユーザ名」「ホスト」「パスワード」を wp-config.php に合わせて作成する。

その後、「ユーザ専用データベース」から、「データベース “DB名” への全ての特権を与える」にチェックがある事を確認し、右下の「実行」ボタンをクリックする。

これで作成したデータベースに対して全権を持つユーザが作成できた。
ここまでやることで、完全に以前と同じ状態(URL、構造)で WordPress のお引越しが出来たことになる。

 

問題が起きたら(アップロードサイズ、403Forbidden)

インポート時にアップロードできる最大サイズで問題が起きる場合、「bzip」等の圧縮を選択した上でもまだ引っかかるのであれば、サーバ管理者に相談してみるくらいしか手はない。
(でもレンタルサーバの場合ほぼアウトだと思う)

もしも自宅サーバやVPSなど、php.ini が触れる状態であれば、以下の項目をサイズに合わせて修正することで解決する。
meory_limit は 他の2項目と同一か、それより大きくなければならないそうだ。

Debian の場合は以下。

sudo vi /etc/php5/apache2/php.ini

memory_limit = 32M

post_max_size = 32M

upload_max_filesize = 32M

 

上手くやったはずでも403になる場合。
バーチャルホスト設定の Options,AllowOverride ディレクティブを確認しよう。

移行前のサーバで mod_rewrite を使う感じに .htaccess を設定されていたのに、移行先のサーバで rewrite が許可されていないとか、あるいはVPSで単にmod_rewrite を a2enmod してなかったりとか?

 

データベース接続確立エラー と出た場合は、単にデータベース関連でミスがある。
ユーザ名やデータベース名に間違いはないか、ユーザに権限を付与し忘れていないかなどチェック。

大体このような感じだ。

 

関連書籍

  • このエントリーをはてなブックマークに追加
  • Pocket
  • 1 follow us in feedly

関連記事

no image

【WordPress】WP Super Cacheで設定時に500エラーが出るときの対処法

WordPressのページキャッシュ用にWP Super Cacheと...

記事を読む

no image

WordPressでメニューが文字化けする

WordPressでメニューを編集した際、保存を押すと文字化けが起きた...

記事を読む

no image

WordPressのパーマリンク設定で403が出たときの対応

WordPress を新規インストールして諸々の設定を行っていると、パ...

記事を読む

no image

mono-labさんのCUBICテーマでどうしても気になった点

2015年2月18日 追記 xhtmlのアウトラインぶち壊しててワロ...

記事を読む

新着記事

no image

【WordPress】WP Super Cacheで設定時に500エラーが出るときの対処法

WordPressのページキャッシュ用にWP Super Cacheと...

記事を読む

【Debian】mysqlのスロークエリログを取得する手順

VPSにWordPressをインストールしていると、キャッシュプラグイ...

記事を読む

no image

MIFES10でUWSCの予約語・キーワードを明示する

最近エディタにはMIFES10を利用しているが、UWSCの利用頻度が上...

記事を読む

no image

WordPressでメニューが文字化けする

WordPressでメニューを編集した際、保存を押すと文字化けが起きた...

記事を読む

no image

WEBサイトキャプチャーツール「CrenaHtml2jpg」が便利

WEBサイトのキャプチャを作成したい事は多々ある。 これまでは He...

記事を読む

コメント/トラックバック

トラックバック用URL:

この投稿のコメント・トラックバックRSS




管理人にのみ公開されます

no image
【WordPress】WP Super Cacheで設定時に500エラーが出るときの対処法

WordPressのページキャッシュ用にWP Super Cacheと...

【Debian】mysqlのスロークエリログを取得する手順

VPSにWordPressをインストールしていると、キャッシュプラグイ...

no image
MIFES10でUWSCの予約語・キーワードを明示する

最近エディタにはMIFES10を利用しているが、UWSCの利用頻度が上...

no image
WordPressでメニューが文字化けする

WordPressでメニューを編集した際、保存を押すと文字化けが起きた...

no image
WEBサイトキャプチャーツール「CrenaHtml2jpg」が便利

WEBサイトのキャプチャを作成したい事は多々ある。 これまでは He...

→もっと見る

PAGE TOP ↑