このたび、無料サーバーへ出戻りをしました。
最近の引越し履歴は下記の通りです。
XFREE(無料) → Xserver(有料) → XFREE(無料)
目的
サーバー移行の手順確認と、元のサーバーに戻る際に何か障害が無いかの確認。
手順
戻り先のサーバーに、移行前のファイルがまるごと残っている場合、どのようにして
1.旧環境のファイルのバックアップを作成する
目的:仮にデプロイ失敗しても、旧環境のファイルを参考にして復元できる場合があるため。
とりあえず、何か事故が起きた場合に備えて、引越し先のバックアップを作成します。
ざっくり手順
1.FTP接続して引越し元のファイルを引越し先に持っていく。
2.引越し元サーバーのSQLをエクスポートして、引越し先でインポートする。
3.ドメインのネームサーバーを変更して引越し先に接続してもらう。
詳細手順
・引越し先側サーバーでの作業
1.MySQL設定のバックアップを作成します。
2.「FileZilla」で引越し先(この場合はXFREE)にFTP接続して、まるごとファイルをバックアップします。
XFREEの場合、設定画面から、「FTP接続の許可」を「有効」に設定する必要があります。
有効にしたら、パスワードはメモ帳などに保存しておいてFTP接続時のパスワード欄に使用してください。
3.転送処理が終わったら「FileZilla」のウィンドウ下の方のタブを確認し、転送に失敗したファイルがなければ作業完了です。
4.「FileZilla」で、引越し先のファイルを全て削除します。
このとき、ディレクトリが数件残ったりしますが、中にファイルがなければ無視できますのでそのまま続行します。
・引越し元側サーバーでの作業
1.MySQL設定のバックアップを作成します(一応)
2.「FileZilla」で引越し元(この場合はXserver)の環境からファイルのバックアップを作成します。
(「〇〇.com(ご自身のドメイン名)」ディレクトリ内の、「public_html」内のファイル全てです。)
3.全てのファイルをコピーしてアップロードする専用のファイルとして保存しておいてください。
※バックアップファイルを直接編集すると、復元が困難になるため。
4.アップロードするファイル「wp-config.php」のみ下記の編集を行います。
define(‘DB_NAME’, ‘引越し先のデータベース名’); define(‘DB_USER’, ‘引越し先のユーザー名’);
define(‘DB_PASSWORD’, ‘引越し先のユーザー名に設定したパスワード’);
define(‘DB_HOST’, ‘引越し先のホスト名’);
5.3, 4で作成したファイルを引越し先(この場合はXFREE)に転送します。
6.「引越し先側サーバーでの作業」で作成したバックアップファイルから復元します。
・ドメイン業者さんで行う作業
1.ネームサーバーの設定 引越し先のサーバーの情報に更新します。
以上で移行完了です。
もしもDB接続ができない場合
この場合はだいたい「wp-config.php」のファイルの設定がうまくいっていないだけです。
「引越し元側サーバーでの作業」6の「wp-config.php」の編集でつまづくのではと思われますが、こちらはかんたんな解決法があります。
1.新環境(この場合はXFREE)の設定画面から、「アプリケーションの削除」を選択して「WordPress」を一旦削除して、その後管理画面からご自身のドメインで再度「WordPress」をインストールします。
2.「FileZilla」で、新規インストールした「WordPress」の「wp-config.php」ファイルをダウンロードします。
3.下記の部分
define(‘DB_NAME’, ‘引越し先のデータベース名’);
define(‘DB_USER’, ‘引越し先のユーザー名’);
define(‘DB_PASSWORD’, ‘引越し先のユーザー名に設定したパスワード’);
define(‘DB_HOST’, ‘引越し先のホスト名’);
これを全てコピーして、アップロード用ファイルの「wp-config.php」の同じ部分に上書きするだけで完了できます。
以下今回作業で気づいたこと
ファイル郡に個々の記事ファイルがない。
とりあえずファイル郡を移行してからSQLの復元を行いましたが、そうすると引越し前の状態で表示されます。
バックアップから新規作成したブログ記事のリンクで検索しても見つからず「やはり」と思ったのですが、ブログって個々の記事のファイルが無いんですね。
フルスクラッチでコーディング作業をしていると「このhtml内の表記って、全部sqlで保持してサーバーサイドで分岐処理する方が効率的なのでは?」と思うことがあります。
「なんだそんなの当たり前だろ?」と思われるかもしれませんが、まあ社畜は良くも悪くも会社のルールに従わなければならない訳で「この記述の方が効率的じゃないですかね?」と提案した時点で異分子扱い確定です。
自分が良いと思ったアイデアは、日曜大工で発揮するしかないです。
サイト表示の空白期間の予防措置
当たり前ですが、ネームサーバー設定を先に行うと新環境に接続されます。
今回XserverからXFREEへの変更は5分くらいで完了したのですぐに反映されましたが、XFREEからXserverの方は20時間くらいかかりました。
「先にネームサーバー設定をして、いざファイル」という手順を行った場合に何もないサーバーに接続されてしまってはまずいので、万全の状態で移行することが求められます。
ネームサーバーの設定が反映された段階で新環境に接続されますが、新環境が正しく設定されていない場合、サイトが表示されません。
今回は無料ドメインでテスト運用して問題ない状態であることを確認してからネームサーバー移行しました。
個人のブログであろうと、法人のHPであろうと、訪れてくださる方に対してのマナーとして「きれいに移行すること」は守るべきであると思います。
コメントを残す