Amimoto AMI 網元『から』別のサーバーにwordpressを移転するとき1


とあるサイトを構築するのに、amazon web service EC2のインスタンスを借りて、網元を利用して作成していました。しかし、その後の調査でコスト比較するとvpsを借りた方がいいのではないか、と思うに至り、網元『から』vpsにwordpressサイトを丸ごと移動することになったのです。

この、”から“を強調するのは、『どこか別のサイトから網元へ』サーバー移行するやり方は、ググればいくらでも出てくるのですが、逆のパターンは全く見つからなかったためです。

作業が終わった今になって考えてみると、網元『から』だろうが、網元『へ』だろうが、wordpressのサーバー移行なんてやることはすごくシンプルで、手順さえ解ればスムーズに行くはずなのですが、サーバーに関する知識不足への不安や苦手意識を持っていた自分ではものすごく時間がかかってしまいました。

wordpressのサーバー移行に必要な作業は、結局のところ

・データベースの移行

・ファイルのコピー

のたった2つだけです。

問題は、網元がwordpressを簡単に始められるようにカスタマイズされすぎて、nginxの設定やインスタンスの全体像がつかみづらくなっていることです。

○データベースの移行

サーバー移行のためには、Wordpressのデータが保存されているデータベースをいったん全保存してローカルに落とさなくてはなりません。調べてみると、全保存する方法として、どの記事でも「phpMyAdminを使って……」と出てきます。

しかし、網元ではphpMyAdminはデフォルトで無効になっていて、それを有効にしようとするとまたごちゃごちゃとした作業をしなくてはなりません。(自分はここでいったんつまずいて、ものすごくハマッてしまいました。先輩のサーバーエンジニアさんに協力してもらいました)

参考:
AWS・網元でphpMyAdminを使う方法 – 技術部追い剥ぎペンギン
たった1分!AWS + 網元で phpMyadmin を使えるようにする方法
道はなくても進むのだ。: Amazon EC2 (Amazon Linux) での phpMyAdmin インストールと設定
Amazon EC2にphpMyAdminをインストールした後の作業メモ

上2つのリンクでは、網元にもとから入っているphpMyAdminを有効にする方法を
下2つのリンクでは、新規にインストールする方法を、解説しています。

結論から言うと、どれも全て上手くいきませんでした。結局、網元でphpMyAdminが表示されることは一度もなかったです。

nginxの設定や、ディレクトリ構成など、網元導入時に自動的に決められた部分が多く、解析するのも一苦労でした。

○phpMyAdminなんていらない!

ここで、最初の目的を考えてみると、「Wordpressサーバー移行をするため」に、「データベースの全データをローカルに落とす」でした。
よく考えると、別にphpMyAdminなんて必要なくて、ターミナルのコマンドでできちゃうのです。
phpMyAdminがあれば確かに解りやすく簡単にできるようになりますが、そのために時間がかかってしまっては本末転倒です。

○網元で使用していたデータベースの設定を確認する

まずは実際に網元で使用していたデータベースの名前やパスワードを調べます。
ターミナルでログインして、

vi /var/www/vhosts/○-○○○○○○○○(インスタンスID)/wp-config.php

とコマンドを打つと、

~略~

// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define('DB_NAME', '○○○');   ←おそらくインスタンスIDと一緒

/** MySQL データベースのユーザー名 */
define('DB_USER', '△△△');

/** MySQL データベースのパスワード */
define('DB_PASSWORD', '□□□');

/** MySQL のホスト名 */
define('DB_HOST', '◇◇◇');

/** データベースのテーブルを作成する際のデータベースの文字セット */
define('DB_CHARSET', 'utf8');

/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define('DB_COLLATE', '');

~略~

という感じの設定が確認できます。

○網元のデータベースを出力しダウンロード

ここで確認した情報をもとに、

mysqldump -u root ○○○(データベース名) > dump.sql

と打ち込むと、データベースの全データを出力することができます。
そして、出力されたdump.sqlファイルをローカルに落としてきてください。
これで網元のデータベースをバックアップすることができました。

○wordpressの全ファイルをダウンロード

これはそのまま

/var/www/vhosts/○-○○○○○○○○(インスタンスID)/

以下のファイルを全てダウンロードしてくるだけなので問題ないはずです。

以上で、Amazon EC2の方でやる作業は全て終了です。

その2に続きます。

カテゴリー: Linux, Wordpress, プログラム

コメントを残す

メールアドレスが公開されることはありません。