カッとなってやった。後悔はしていない。5分で出来るサーバー移転の話[ロリポップ!→GehirnRS2]
このブログは独立したサーバに移転してから数ヶ月たつ訳ですが、まあロリポップ!でWordPress動かしていると、兎にも角にも遅い。
しかも、なんか結構な頻度でInternal Server Errorとか返してる。酷い!
という事で、シラフな頭でカッとなってやりました。後悔はしていない。
移転先は、以前何かのブログで見かけたGehirnRS2。
若年なやり手ハカーな人が作ったサービスと言う事で、なんか早いし、久しぶりに見てみたらコンパネが進化してた。凄い。
移転の方法
1:ロリポップ!でSSH接続します。
何はともあれ、これが必要です。まずはDBをダンプしましょう。
# mysqldump -u hogehoge -p DBの名前 > 適当な名前.sql
という感じでOKです。ユーザー名やDB名は、wp-config.phpに書いてあるので、そこから引っ張りましょう。
2:公開鍵を作りましょう
# ssh-keygen -t rsa
適当に鍵を作ります。rsyncでファイル転送するのに使います。
3:Gehirnにアカウントを作りましょう。
4:作ったらRS2にドメインを一つ設定しましょう。僕の場合はgeeorgey.comを設定しました。ドメインの設定はムームードメイン使っているのでムームーDNSにCレコードを設定すればOKです。こんな感じ
5:できたら、GehirnRS2にSSH接続してみましょう。やり方は割愛します。
6:今度はロリポップ!の公開鍵をGehirnRS2のauthorized_keysに登録します。
まずはロリポップ!で
# vim .ssh/id_rsa.pub
これで出てきたキーを全部コピーしておきます。
次に、Gehirnで
# vim .ssh/authorized_keys
とやって、先程コピーした文字列をコピーすれば完了。これでロリポップ!のサーバからGehirnRS2に接続できるようになります。出来るかどうかはロリポップ!側からsshしてみればおk
7:ファイルを転送しちゃいましょう
ロリポップ!側からWordPressの入っていたフォルダの中身を全て、GehirnRS2にドメイン設定したフォルダの下に転送しちゃいます。
ロリポップ!側のSSH画面で
# rsync -av /path to your WPフォルダ/* GehirnのSSHユーザー名@GehirnのIP:/設定したフォルダまでのパス/
これですべてのファイルが転送されます。簡単☆
8:データベースファイルを転送しちゃいましょう。
1で作ったsqlファイルを7同様にrsyncで転送しちゃいます。
9:GehirnコンパネからDBを作ります。
10:作ったDBにsqlファイルを読み込ませましょう
Gehirn側のSSH画面で
# mysql -u mysqlユーザー名 -p mysqlDB名(ユーザー名と一緒) < 8で転送したsqlファイル.sql
11:wp-config.phpの中身をちょっと変えます
変えるのはユーザー名、DB名、パスワードの3つ。今書いてあるのはロリポップ!の設定だからね。
12:表示の確認をしよう
hostsファイルをいじりましょう。MACの場合は
# sudo vim /private/etc/hosts
これでファイルの中に
IPアドレス アナタのドメイン
という1行を加えれば、アナタのPCから該当ドメインを開こうとすると、そこに書いたIPアドレスが開かれるようになります。同じように見えているかどうかを確認すればOKです。ちゃんとGehirnサーバになってるかどうかがわからないという場合は、wp-config.phpの中にあるパスワードを一文字消してみてDBコネクトエラーが出るかどうかで確認すれば良いと思います。
13:問題なければムームーDNSのAレコードを変更しましょう
今までロリポップ!にあたっていたDNSレコードを、Gehirnサーバに当て直します
これで完成!!!
慣れれば5分で終わる作業なんです。なんて簡単なんだ。もっと早くにやっておけばよかった。