PR

「coreserver→さくらインターネット」移転メモ(1)

coreserver でデータベースが壊れる現象が多発するようになったので、さくらインターネットに移転することにした。なぜデータベースが壊れるのかや、coreserver ・ さくらインターネットの良し悪しは理解している。それぞれ一長一短だ。

データベースが壊れた際の復旧方法はこちらをご参照ください

全体的な流れ

coreserver 間の移転はとても便利なのだが、今回はさくらインターネットへの移転を試みる。つまり、coreserver から外部サーバーへの移転メモになる。

  1. (旧)すべてのアクセスの遮断
  2. (旧)バックアップ(ファイル、データベース)
  3. (新)ファイル転送
  4. (新)復元とテスト、設定変更
  5. DNS 書き換え
  6. 完了

スポンサードリンク

※サイトの構成やファイル数、データベースの大小によってはここに記載する方法ではないほうが、よりスマートに移転できるかもしれない
※さくらインターネットへは事前に申し込み、あるいは試用期間が終了して本登録が完了しているものとする

準備

WordPress の不要データ削除をやっておく

(旧)すべてのアクセスの遮断

coreserver間での移転なら、非常に便利な機能が用意されているからアクセスを遮断するにしても最小の時間で済む。一例だが、

  1. サーバー間転送機能を利用し新しいサーバーに旧サーバーからすべてのデータを受け入れ、
  2. .htaccess を使うか意図的にデータベース接続を遮断し503 エラーを出力させ、
  3. その間にデータベースのバックアップを取り新サーバーで復元し、
  4. そしてDNS を書き換えれば波及と共に移転完了

となる。アクセスログを取得するなど頻繁にデータベースに書き込みを行わないか、移転する間のデータが不要なら更に作業を減らすこともできる。

今回は筆者を含めてすべてのアクセスを遮断し、さくらインターネットに移転する方法を選択した。なお、外部からも正しくメンテナンス中である旨の表示がされているかは「HTTPチェック【外部からの疎通確認】」などのサービスを利用すると便利。

関連記事

参考文献

(旧)バックアップ(ファイル、データベース)

アクセスを遮断したらファイルとデータベースのバックアップを作成する。これにも幾つか方法がある。

ちなみに、rsync コマンドはcoreserver にも用意されており、さくらインターネットはSSH 接続が可能だから、ファイル容量等によっては容易に転送できる手段になる。

今回は以下のようにした。

  • ファイル容量が多くファイルを圧縮できない(Kill される)ため、FTP でバックアップしてさくらインターネットに転送した
  • データベースはcoreserver のコントロールパネル上のdump作成とphpMyAdmin のバックアップを念のため両方取得しておく
  • phpMyAdmin でバックアップができない(おそらくKill される)場合はコマンドラインからバックアップを取得する
  • その他WordPress プラグインを利用する方法もあるが、今回はすべてのアクセスを遮断しているので利用できない

coreserver のコントロールパネルからデータベースのdump作成。

coreserver のphpMyAdmin からバックアップ。

データベース・バックアップの関連記事

(参考)解凍圧縮コマンド

コマンド例


tar cvfz pc.casey.jp ./public_html/pc.casey.jp


※本サイトのデータは大きく、コマンドラインから作業してもKill されたため、この方法は利用できなかった

(参考)バックアップ(と転送)をサーバー間でやらせる

コマンド例


rsync -avz -e ssh ./public_html/pc.casey.jp/ wwwXXXX.sakura.ne.jp:/home/XXXX/backup/pc.casey.jp/
The authenticity of host 'wwwXXXX.sakura.ne.jp (XXX.XXX.XXX.XXX)' can't be established.
DSA key fingerprint is XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX:XX.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'wwwXXXX.sakura.ne.jp,XXX.XXX.XXX.XXX' (DSA) to the list of known hosts.
[email protected]'s password:
building file list ... done
./
.htaccess
:
:
sent 242226 bytes  received 20 bytes  44044.73 bytes/sec
total size is 328825391  speedup is 1357.40


関連記事

参考文献

(新)ファイル転送

データベースも容量が多く、さくらインターネットの phpMyAdmin で受け入れられない。またデータベースの同期はcoreserver で対応しておらず、さくらインターネットでは対応しているがおそらく外部からの接続は受け付けないだろう。

(新)ファイルとデータベースの復元

→ 続く

コメント