1. TOP
  2. WordPressの引っ越し(移転・移行)及びバックアップを簡単・確実に行う方法

WordPressの引っ越し(移転・移行)及びバックアップを簡単・確実に行う方法

 2017/06/24 コンピューター
  39 Views

WordPressは、大きく分けると2種類のデータで動いています。データベース(MySQL)とそれ以外のファイルの二つです。そして、WordPressの引っ越し(移転・移行)では、この2種類のデータを個別に移動させる必要があります。

1)データベース(MySQL)の移動(エクスポート及びインポート)
2)データベース以外のファイル(サイトデータ)の移動(ダウンロード及びアップロード)

以下では、Xserver以外(移動元)からXserver(移動先)へのサーバー間の引っ越し(移転・移行)を想定しています(ドメインの変更を伴うサーバーの引っ越しも含みます)。なお、移動元での操作でもXserverを使って説明している箇所があります。

ところで、上記のエクスポートとダウンロード、及びインポートとアップロードは、それぞれ同義語と考えてよいでしょう。

3)各種の設定変更が必要

WordPressは、これら2種類のデータをただ単に移動させただけでは動きません。データを移動させるとともに、WordPressとデータベース(MySQL)を関連付けるための設定変更や、サーバーがXserver以外からXserverに変わったことを知らせる設定変更が必要となります。さらに、ドメインの変更を伴うサーバーの引っ越しの場合には、データベース内の旧ドメイン設定を新ドメインに書き換えることも必要です。(最下段にて詳説)

いずれにしても、まずは移動元のバックアップを取ることになります。バックアップ作業は、トラブルがあったときの対応のためにも必要不可欠なことです。WordPressを使っていて不具合が生じることはまれではありません。テーマやプラグインの設定時などは、特に気を付ける必要があります。定期的にバックアップを取る習慣を付けることが大切です。

以下では、Xserverの公式マニュアル「Xserver >> マニュアル >> WordPressの移転について」 を基にして、私なりに手順及び考え方をまとめてみました。
https://www.xserver.ne.jp/manual/man_install_transfer_wordpress.php

Xserverのサポートがすごい

今回ちょっとしたことから、Xserver以外のレンタルサーバーからXserverへ、WordPressを引っ越ししてみようと思い立ちました。Xserverは以前から盛用しており、WordPressも導入したことはあります。しかし、XserverではWordPressはほとんど使ったことはありませんでした。

今回は、Xserver以外で記事数が百数十までに育ったWordPressを、Xserverに移し替えて本格的な運用を図りたいと考えました。しかし、WordPressには少し慣れてきたとはいえ、WordPressの引っ越しは経験したことがありません。上記Xserverの公式マニュアルを手元に置いて作業を進めるのですが、どうしてもどこかで引っかかってしまいます。

その度に、Xserverのカスタマーサポートを頼ることになってしまいました。疑問点が出るたびにメールを入れました。夜間に作業することが多いのですが、翌日の午前11時ころには丁寧な回答が届きます。それを見てまた夜に作業をして、よく分からないことがあればまたメールする、すると翌日午前の同じ頃また回答が届くということの繰り返しです。

データベースやサイトデータを幾度となく入れ替え、設定をやり直しました。そして、やっと今日満足のいく結果を得ることができました。

Xserverのサポートは素晴らしいの一言に尽きます。まず最初に、こちらの疑問点・問題点をきちんと把握していただけるので安心感があります。そして次に、的確な対応方法を示していただけるので、無駄な作業をすることがありません。

メールを何度もやり取りすることになったのは、こちらの理解不足からです。今回のメールのやり取りで、インターネットとサーバー及びWordPressとの関係・仕組み、あるいは考え方を理解することができました。

Xserverのサポートは昼夜を問わず行われているのでしょうか。少なくとも今日7月2日(日)も同じタイミングで、違うサポーターの方の名前でメールが届きました。一つの案件について連携プレーもうまくできているのでしょう。2017/6/27~7/2

Xseverにしない理由が私には思い当たりません。

移動元データをバックアップする

手順1)データベース(MySQL)のバックアップ(phpMyAdminを使う)

データベース(MySQL)のバックアップには、「phpMyAdmin」の「エクスポート」機能を使います。もちろん、プラグイン(BackWPupなど)や、レンタルサーバー付属のバックアップツール(Xserverにも有り)を使用することもできます。しかしながら、WordPressはデリケートな部分があるようで、いざデータを復元しようとするとエラーが出たりします。

そこで、「phpMyAdmin」です。後々エラーの雨霰(あめあられ)にやられてしまわないように、次のようなステップで必要な項目にチェックを入れながらやっていきましょう。この方法が結局は一番確実です。

まず、「phpMyAdmin」を立ち上げます(以下、Xserverの場合で説明)。

エックスサーバー(Xserver)>> InfoPanel >> サーバーID選択 >> サーバーパネル、ログイン
データベース >> phpmyadmin(MySQL5.7)

該当するデータベースにアクセス権を設定したユーザー名(及びそのユーザー名に対するパスワード)でログインします。

ユーザー名:MySQLユーザー名(例えば、example_wp1)
パスワード:MySQLユーザー名(例えば、example_wp1)のパスワード

一番左のサイドで、ダウンロードすべきデータベースを選択する
(当然ながら一番最初にやるべき最も大切な操作です)
テーブルがExcelの表のような感じで表示されるので、全ての行にチェックを入れる
エクスポート、クリックする
エクスポート方法 ⇒ 「詳細 – 可能なオプションをすべて表示」選択
全選択/全選択解除 >> 全選択された状態(デフォルト)のままでOK
出力 >> ファイルの文字セット:utf-8(絶対にこのままで手を付けないこと)
出力 >> 圧縮「なし」が一番確実。データベースが大きくて圧縮したいときは、移動先でインポートファイルとして採用されている形式を事前に調べておく必要がある(zip、gzipあるいはbzip2形式など)。
フォーマット特有のオプション >> コメントの表示、チェックを入れる
フォーマット特有のオプション >> 構造とデータ、チェックを入れる

生成オプション:チェックが必要(重要)
「DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER コマンドを追加する」、チェックを入れる。

理由は、データベースは同じ名前のテーブルを複数つくることができない仕様になっているからです。ここにチェックを入れておかないと、既存のデータベースに上書きができないのです。ただし、空のデータベースにインポートするときは、チェックが無くても問題はありません。とはいうものの、常にチェックを入れることにしておけば、何も考える必要がなくて楽です。

手順2)サイトデータ(データベース以外のファイル)のバックアップ(FTPソフトを使う)

FTPソフトを立ち上げる。
必要なフォルダ(あるいはファイル)をダウンロードする。
(以下、Xserverの場合で説明)

estributor-hiroshima.jp >> public_html >>

public_htmlの下には、WordPress関連の下記フォルダ(あるいはファイル)があります。

wp-adminフォルダ
wp-contentフォルダ
wp-includesフォルダ

また、上記フォルダの外に.htaccessファイルなどもあります。

なお、キャシュファイルが多いとダウンロードに時間が掛かってしまいます。キャッシュファイルは、ダウンロードファイルに含めなくても大丈夫です。

Xserver(移動先)の作業を行う

手順3)ドメインの追加設定(独自ドメインで運用する場合)

Xserverで独自ドメインを利用するには、ドメインの追加設定をする必要があります。
なお、ドメイン設定を行うには、事前にドメインを取得(所有)している必要があります。

エックスサーバー(Xserver)>> InfoPanel >> サーバーID選択 >> サーバーパネル、ログイン
ドメイン >> ドメイン設定
ドメイン追加設定、追加設定(確認)

作業が完了すると、サーバー内に独自ドメインと同じ名前のフォルダが作成されます。そしてそのフォルダの中にはpublic_htmlフォルダが入っています。

手順4)新たなデータベースの作成

移動元のデータベースの受け皿として、事前に新たなデータベースを作成しておきます。

エックスサーバー(Xserver)>> InfoPanel >> サーバーID選択 >> サーバーパネル、ログイン
データベース >> MySQL設定

MySQL追加タブ ⇒ 「MySQLデータベース名」設定・追加
MySQLユーザ追加タブ ⇒ 「MySQLユーザID」設定・追加(パスワードも設定する)
MySQL一覧タブ
⇒ 該当するデータベースを選択
⇒ アクセス権未所有ユーザの中から、アクセス権を設定したいユーザーを選択・追加する
⇒ 該当するデータベースの中に、アクセス権を設定したいユーザー(アクセス権所有ユーザー)が追加される
MySQL5.7 ホスト名を確認しておく(例えば、mysql****.xserver.jp)

手順5)データベースのインポート(phpMyAdminを使う)

移動元データベースをXserver(移動先)にインポートする方法は以下のとおりです。phpMyAdminを使います。

エックスサーバー(Xserver)>> InfoPanel >> サーバーID選択 >> サーバーパネル、ログイン
データベース >> phpmyadmin(MySQL5.7)

データベースに設定したユーザー名とパスワードでログインします。
ユーザー名:MySQLユーザー名(例えば、example_wp1)
パスワード:MySQLユーザー名(例えば、example_wp1)のパスワード

インポートするファイル >> ファイルを選択、ボタンをクリック
該当するファイルを選択、実行をクリックする

手順6)サイトデータのアップロード(FTPソフトを使う)

移動元からダウンロードしたサイトデータは、以下のフォルダに入っています。

wp-adminフォルダ
wp-contentフォルダ
wp-includesフォルダ

また、上記フォルダの外にindex.phpファイルなどもあります。

上記フォルダ(あるいはファイル)を、Xserver(移動先)のpublic_htmlの下に設置します。

http://example.com/の場合、
FTP上での設置先は、http://example.com/public_html/です。

http://test.example.com/の場合(サブドメイン)、
FTP上での設置先は、http://example.com/public_html/testです。

なお、下記2つのファイルが存在する場合には、ファイル名を変更するか、またはファイルを削除します。

・index.html
・default_page.png

各種の設定変更を行う

手順7)wp-config.phpファイルの書き換え

データベース(例えば、example_wp1)は、レンタルサーバー(例えば、mysql****.xserver.jp)内に保管されています。そして、該当するデータベースにアクセス権を設定したユーザー(アクセス権所有ユーザー、例えば、example_wp1)、及びアクセス権所有ユーザーのパスワードを使って管理します(ひも付けられています)。

wp-config.phpファイルは、これらの設定をあらかじめ書き込んでおくためのファイルです。public_htmlフォルダ内にあります。

さて、ここまでの手順では、このwp-config.phpファイルは、移動元サーバーの情報が書き込まれたままの状態になっています。そこで、これらの古い情報をXserverのものに書き換えてやる必要があります。

wp-config.phpファイルをテキストエディタで開いて編集します。そして、以下の4つの項目を必要に応じて書き換えます。なお、下記の項目は、当然ながらXserverで「phpMyadmin」を操作するときに必要とする項目と全く同じです。

1)MySQLデータベース名(例えば、example_wp1)
2)MySQLユーザーID(例えば、example_wp1)
3)MySQLユーザーIDのパスワード
4)MySQLホスト名(例えば、mysql****.xserver.jp)

この項目の設定を誤ると「データベース接続確立エラー」ですと叱られます。画面は真っ白いままとなってしまい、WordPressで何も表示されなくなってしまいます。

手順8)ドメインネームサーバの変更、及びサイトの動作確認

最後に、今後はXserver(新しいサーバー)でWordPressを運用することをインターネット上で開示しなければいけません。

ドメイン管理事業者(お名前.COMなど)のWeb上で、ネームサーバーを以下のように書き換えます。

ネームサーバー1:ns1.xserver.jp
ネームサーバー2:ns2.xserver.jp
ネームサーバー3:ns3.xserver.jp

以下、必要に応じてネームサーバー4~5を設定します。

なお、使用している「パソコンの「hosts」ファイルを編集することで、ネームサーバーの切り替え前に動作確認ができる」ようですが、これは試みていません。

手順9)ドメインの変更を伴うサーバーの引っ越し(旧ドメインの書換えが必要)

独自ドメインの変更を伴うサーバーの引っ越し、あるいは、開発環境から本番環境へ移行する際などには、データベース内の旧ドメインを新ドメインに書き換える必要があります。

つまり、データベースを移動させただけでは、データベース内には旧ドメインの記述が残ったままになっています。それらを全て新ドメインに書き換えなければなりません。

phpMyAdminで一括変更することも考えられますが、不具合を生じる箇所があります。そこで、データベースのレコードを書き換えるツール「Search and Replace for WordPress Databases Script」を使用します。
https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

ファイルをダウンロードして、zipファイルを解凍します。解凍してできたフォルダ「Search-Replace-DB-master」を、フォルダごとWordpressファイルと同じ階層にアップロードします。

次いで、アップロードしたファイルのディレクトリにアクセスします。
例えば、http://example.com/Search-Replace-DB-master/

ドメインを入力
「replace」⇒ 旧ドメインを入力
「with」⇒ 新ドメインを入力
注:「http://」、最後の「/」は必要ありません。

テスト、実行
「dryr run」ボタン ⇒ テスト
「live run」ボタン ⇒ 書き換えを実行

完了、削除
作業が無事完了したら、最後に「delete me」ボタンをクリックして、このスクリプトをサーバー上から削除します。スクリプトが残っていると、外部からアクセスされる可能性があるので危険です。作業完了後は、スクリプトを必ず削除するようにしましょう。

以上です。

\ SNSでシェアしよう! /

エストリビューターへの道|電子書籍は最高のブランディングツール)の注目記事を受け取ろう

NO IMAGE

この記事が気に入ったら
いいね!しよう

エストリビューターへの道|電子書籍は最高のブランディングツール)の人気記事をお届けします。

  • 気に入ったらブックマーク! このエントリーをはてなブックマークに追加
  • フォローしよう!

ライター紹介 ライター一覧

akimasa21

関連記事

  • 独自SSLを設定する(Xserverにて)

  • コンピューター各種設定

  • ホームページ作成奮闘記

  • アマゾン・オンラインストレージ(プライム会員は無制限のフォトストレージを追加料金不要)

  • MAMP:ワードプレス(練習用の環境を作る)

  • XserverでWordPress(独自ドメイン)を利用する