年末休暇(≒1年で1番blogのアクセス数が落ち込む時期)で、ブログのサーバーを移転しました。
サーバー移転の手順と、移転作業中に手こずった部分(時間がかかったところ)を、今後のための備忘録として記録しときます。
新年1発目の記事が資格ネタじゃなくてすいません。
そして移転作業中に、2~3件ほどコメントの承認でエラーがおきてしまい、承認ができなくなってしまいました。
せっかくコメントをくださったのに申し訳ありません。
(おそらく旧サーバーにコメントが飛んでしまい、新サーバーの方では確認できなくなってしまった?)
「miwaに無視された!」などと怒らず、また改めてコメント等をいただけますと嬉しいです。
サーバー移転の手順
サーバーの移転の順序は以下の通り。
旧サーバー(移転元):FIREBIRD、新サーバー(移転先):Clouver、ドメイン:スタードメイン
どれもネットオウル系のサービスです。
①旧サーバーより、データファイルをダウンロードする
画像やプラグイン、テーマなどのファイルをローカルにダウンロードします。
★まずここでつまづきました。
元々、ファイル転送用ソフトは「FFFTP」を利用していましたが、大容量のファイルをダウンロードする場合、時間がとてもかかるうえにエラーが起きてうまくいかなかったのです。
そこで、他に何かいいソフトがないかどうか検索した結果、FileZillaを利用することにしました。
・Filezillaのダウンロード
・超初心者向け!FileZilla(ファイルジラ)の使い方
・FFFTPからの乗り換えにおすすめのFTPクライアント「FileZilla」の導入と設定
★すべてを選択してドラッグ&ドロップすれば、一括でダウンロードを開始してくれるんですが、一括でダウンロードするよりは、ある程度分割してダウンロードしたほうがいいです。
全部一括でダウンロードすると、大抵はものすごく時間がかかる上に、不要なファイルまで一緒にダウンロードしてしまうからです。
不要なファイルはダウンロードしない、移転先のサーバーで新たに入れればいいプラグインはダウンロードしない、などの工夫が必要。
特に、backup-dbのバックアップファイル!
私はwp-content内にあるフォルダをまとめて全てダウンロードしてしまったため、backup-dbフォルダのファイルを大量にダウンロードすることになってしまい、ものすごい時間がかかってしまいましたorz
ああ何て時間と通信量の無駄遣い。
②旧サーバーのデータベースをエクスポートする
phpmyAdminにログインし、MySQLのデータベースをエクスポートします。
データベースのサイズが小さい場合は一括でダウンロードしても問題ないとは思いますが、サイズが大きい場合はgzip、bzipなどで圧縮してエクスポートする、テーブルごとに分割してダウンロードすること。
※私は、最初phpmyAdmin自体にログインができず、またしてもここで2時間くらい躓きましたorz
phpmyAdminのログインIDとパスワードは、FTPのログインIDとパスとは違うんですね…。
★phpmyAdminのログインIDとパスワードがわからなくなった人は、FTPソフトでwp-config.phpファイルをダウンロードして開いてみて、「MySQL データベースのユーザー名」と「MySQL データベースのパスワード」を確認しましょう。
コレを入力すればログインできるはずです。
③新サーバーにドメインを設定する
★FTPユーザ名、FTPパスワード、FTPホストのメモを忘れないこと。
(⑤Filezillaでのアップロード時に新サーバーのホスト名等の入力が必要です)
④新サーバーにデータベースを作成する
【mysql追加】
★データベース名は任意。文字コードはUTF-8を選択する。
★追加後は、データベースパスワード、データベースユーザー名、データベースホスト名のメモを忘れないこと
(⑤・⑥で使います)
⑤新サーバーにファイルをアップロードする
FileZillaで新サーバー(クローバー)に画像やプラグイン、テーマなどのファイルをアップロードします。
①の逆の作業です。
★ファイルのアップロード前に行うこと①
wp-config.phpファイル中の
・データベース名
・データベースのユーザー名
・データベースのパスワード
・MySQLのホスト名
を新サーバーのものに書き換えます。
※書き換えの際は、TeraPadなどのテキストエディタを利用すること。
windows付属のメモ帳で保存すると、文字化けが起こる可能性があります。
ちなみに、phpmyAdminのパスワードを変更した場合も、このwp-config.phpファイルのデータベースのパスワードの書き換えが必要です(書き換えないと「データベース接続エラー」がおきます)。
★ファイルのアップロード前に行うこと②
新サーバー内にある、
・.htaccess
・default_page.png
・index.html
の3つのファイルをあらかじめ削除しておいてください。
⑥新サーバーにデータベースをインポートする
②でエクスポートしたSQLファイルを、新サーバー(クローバー)のphpmyAdminにインポートします。ユーザー名とパスは、④で設定した「データベースのユーザー名」「データベースのパスワード」を入力します。
※SQLファイルのサイズが大きすぎてエラーが起きる場合の対処法…「BigDump」を利用する
・超巨大な MySQL のデータを共用サーバーにインポートできる BigDump の使い方
・大きいサイズのSQLをインポートしてくれる「BigDump」
ただ、私は置いたbigdump.phpにアクセスしても404エラーが出てしまい、この方法でのインポートができなかったため、結局は②に戻り、ファイルを分割してエクスポートしなおして、一つずつアップするという地道な作業を行うハメになってしまいましたorz
うーむ。何がいけなかったのだろう。
でも分割すればどうにか全部インポートすることはできたので、良しとしよう(いいのか?)
⑦移転前動作確認をする
この確認URLをコピペして表示して、移転前と同じように表示されればOKです。
※一部の画像等が正しく表示されないこともありますが、本文中の画像や文章が移転前と同様に表示されていれば、概ね問題はないです。トップページ以外のページを確認したいときは、確認URLの後ろに該当ページのアドレスを入れれば表示されます。
逆に、トップページに10件の記事のリストが表示されるべきところの表示に不具合がある場合(記事が正しくループされていないなど)は、mysqlのインポートに不具合があるということです。
★動作確認が終わったら、速やかに移転前動作確認URLは削除する
(重複コンテンツとしてペナルティを受ける恐れがあるとか?)
⑧ネームサーバーの設定
スタードメインの管理画面にアクセス。
今回は同じネットオウル内での移転作業だったため、お手軽設定での設定ができました。
その他…サーバーの移転は、余裕をもって行うこと!
ネームサーバーは変更から時間をかけて、アクセス先のサーバーがだんだんと切り替わるので、旧サーバーの契約期間ギリギリで移転を行うと、ダウンタイムが発生する恐れがあります。
移転を考えている場合は、契約期間満了の1~2か月前に移転作業を行うこと。
サーバー移転後の反省点と改善点
今回の反省点は、ファイル・データベースともに想像以上にサイズが重たすぎたこと!
だって移転前に一括でダウンロードした、mysqlのファイル(GZファイル)のサイズが65,573KB(64.04MB)ですよ!?
圧縮しても64メガバイトって…そりゃあ一発でインポートが終わらないわけだよwww
※デフォルトでは、インポートの最長が30,720 KiB(約30MB)までと制約がある。
このブログ、記事数のストックが突出して多いわけでもないのに、何がどうしてここまでデータベースが重たくなるものなのか…中を見直してみる。
すると、
・wp_cpd_counter 30MiB(31MB)
・wp_popularpostssummry 55.7MiB(58MB)
この2つが突出してデカいことに気づくw
wordpress popular postsはわかるけど、wp_cpd_counterって一体なんのデータ?と思って調べたところ、wp_cpd_counterはどうやら「count per day」というプラグインのデータらしい。
そういえば昔、ちょっとだけこのプラグインを入れていた時期があったっけ…プラグイン自体は削除していたものの、その時のログのテーブルだけは残っていたってことか…(汗)
もう使っていないプラグインなのでサックリと削除してやる。
wordpress popular postsは人気記事を表示するプラグインで、便利といえば便利なのだけど、このブログは訪れる人によって、興味のあるカテゴリ・ページが全然違うので、サイト全体のトータルの人気記事ランキングは無くても差し支えないのかもしれない。なので削除。
だって危険物やボイラーなどの技術系資格を検索してやってきた人は、保育士やFPの話なんて興味ないでしょうし、そのまた逆も然りですからね。※資格マニアを除く
まぁ何にせよ、この2つのプラグインとデータを削除したおかげで、新サーバーのデータベースのサイズを半分近く圧縮することができました。
うーん。エクスポートをする前に気づけばよかったわい。
最初はwordpress初心者だったので、オススメプラグインをとりあえず入れてみたりしていたんですよね。
その時の安易なインストールが後々まで尾を引くことになるとはね~。
まぁ何でもかんでも「おすすめのプラグイン」を入れりゃいいってもんじゃない、っていう話ですね(苦笑)
※ちなみに、「duplicator」という便利なお引越し用プラグインがあるんだそうで、試しに入れてやってみたけど…エラーになってしまいました。
これはデータベースのサイズがあまりに大きすぎるとダメなのかもしれない。
あと、ページの表示速度の改善をするべく、ブラウザキャッシュの設定を行ってみる。
「お前のページ重たいからどうにかせい!」ってgoogle様に言われてしまったらどうしようもないw
とりあえず、ブラウザキャッシュだけ設定してみる。
キャッシュ系プラグインを入れると早くなるとは言うけど…使いたくないんだよね。
一度W3 Total Cacheを入れて、酷い目にあったこともあるしねorz
終わりに…
こんな感じで、2015年末のサーバー移転作業+αはひとまず終了。
今後また別のサーバーに移転することになった場合も、概ねこの流れでやれば大丈夫だと思います。基本的な流れは同じでしょうしね。
今回はサーバーの移転作業自体が初めてのことだったので、移転の手間があまりかからない(管理画面が使い慣れている、ドメインと同じ系列の会社)、この2年間ファイアバードが安定して運用されていたので安心感がある、という理由でファイアバードの上位サーバーを選んじゃいましたが、正直言うとスペックだけならエックスサーバーやシックスコアの方がいいです(苦笑)
とりあえず、向こう3~4カ月はクローバーを使ってみて、再度他社サーバーとスペックを比較検討してみます。
その時はエックスサーバーないしシックスコアに移転するかもしれませんし、その間にクローバーのサービス(転送量上限やメモリなど)が改善されれば、そのまま6か月契約を延長するかもしれません。
★レンタルサーバー各社↓
独自SSLが無料!クラウド型高速レンタルサーバーが月額126円(税抜)から!スターサーバー
コメント
移転お疲れ様でした
うーむやり方難しそう(笑)
アナログ派からなかなか抜け出せないのでスマホでも苦労してます
ここまで詳しく調べたりできるなら、IT系の仕事も副業として
できそうですね
マイナンバーのせいでみんなばれてしまいますが
アメリカでは普通あるそうですよ
勝手に口座開設されお金をもってかれる犯罪が後をたたないとか
怖いというか制度自体があほというかいまの時点では判断できませんよ
>スコッチさん
やってみれば案外難しいものでもないんですが、とにかく転送作業に時間がかかるって感じです。
無料ブログで記事を書くのに専念するのもいいけど、サーバーの設定とかを自分でやってみるのもオツなものです。wordpressでいろいろいじるのも結構楽しいですよ。
IT系の副業ね~。私程度に出来る人なんて山ほどいますよー。