サーバ移転です。
CORESERVERのお試し期間を利用して、EC-CUBEを動かしてみたりMTを少しだけ置いてみたりしてたのですが、特別困るような症状も見られなかったので移り住む事にしてみました。
。。。って移転直後は良かったような気がするんですが、現在Captchaの画像が表示されなくなったり妙に鯖が重かったりで少し弱ってます。。。
coreserverのお試し期間を登録すると、サーバ間コピー以外は通常通り利用出来ます。
なので、独自ドメインを利用中であれば、coreserverの方にサブドメインを設定して、DNSでそっちに行くように振ってあげればテスト出来ます。
- a サブドメイン名 coreserverのIPアドレス
メール(MXレコード)に関しては、GoogleApps任せなので、特別な事はしなくて良かったです。
サーバ・スペックの変更点
大きな変更点は以下のような感じです。
- Perl
- 5.8.7⇒5.8.5
- PHP
- 4.4.4⇒5.2.5
- MySQL
- 4.0.26⇒5.1.22
- PostgreSQL
- 7.4.14⇒8.2.4
サーバ間コピー
coreserverの管理メニューにあるサーバ間コピーを用いれば、大量のファイルもFTPソフトを利用する事無く移す事が出来て便利です。+早い。
利用の際には、移転元のFTPアカウント情報を設定して、実行です。
ファイルのコピー先には、実行前にディレクトリを作成しておきましょう。
注意点はパーミッションは引き継がれない点です。
なので、ファイルコピー後はFFFTP等の複数起動出来るFTPソフトで移転先と移転元を2つ表示させておいて、パーミッションの変更・確認を行うと良いかもです。
publicの上にコピー・ログが保存されます。
データベースの移行
XREA+では、複数のDBを利用していて、coreserverでも当然のように設置準備が必要になります。
あと、私が用いたのはphpmyadminを利用する方法なので、双方にそれをインストールしておくのが前提で。
ボタンをポチッとするだけなので簡単ですね。
移転元(XREA+)で準備
移転元のDBをバックアップ兼ねてローカルに保存します。
保存する前に、一旦テーブルを最適化して、発生しているオーバーヘッドをきれいにしておくと良いです。
- phpmyadminに入って、移したいDBをプルダウンで選択
- 「データベース」に入って「データベース名」を選択
- 「エクスポート」を選び、テーブル名を「全選択」
- 「ファイルで保存する」にCheckを入れて、ローカルにDL
移転先(coreserver)で準備
移転先でDBを用意します。管理メニューからデータベースに突入。
移転元のDBの文字コードに合わせて、DBを作成します。
この時のユーザ名とパスワードは、phpmyadminにログインする際に必要な情報となります。
メモ欄にはドメイン名やツール名、ディレクトリ名などを入力して、後で見ても判り易いようにしておくと良いです。
相応のものを用意したらphpmyadminにログイン。
先程作成したDBのユーザ名とパスを用いる事になります。
XREA+の場合は、DBが5個までという上限があったので、phpmyadminのconfigファイルに記述して複数利用・取扱いが出来ましたが、coreserverの場合は無限(に近い)なので、ひとつのDBに対して1ログインとして利用する事にしました。
- 空っぽのDBに入る
- 「データベース」を選択、データベース名を選択
- 「インポート」を選択
- 「参照」から移転元で落としたsqlファイルを選択
- 「SQL互換モード」で移転元のSQLバージョン(4.0)に合わせたものを選択[MYSQL40]
- 「インポートは正常終了しました。~個のクエリを実行しました」の表示を確認
念の為、テーブル内を覗いて文字化けを起こしてないか、なんだか妙になってないかを確認します。
MT等のDBを利用してるconfigファイルの確認
DBの接続設定を保存してるファイルがあれば、それらを一通り確認します。
DB名を変更していたりパスワードの変更を行っていれば、それらをキチンと記述し直しておきましょう。
DNS設定
移転先のファイルも用意済み。
DBの準備も出来たらDNS設定の変更に移ります。
aレコードを、用意しているcoreserver側に向けます。
その後、直ぐにはcoreserver側でのドメインウェブ設定は有効になりませんので、しばらく待ってから改めてドメインの設定を行います。
その際「すべてのドメインでAレコードのチェックを行わない(強制設定)」にチェックを入れて設定を行うと、DNS設定の正しい反映が行われるまで待つ必要がないので、こちらを利用しておくと良いです。
あとは反映されるまで数時間掛かりますので、GoogleNotebookなんかにメモを残したり、手順を少しミスった事に頭を抱えながら反映されるのを待ちます。(ふて寝)
反映後
なにはともあれ先ずは表示の確認。その後ゴソゴソします。
Movabletype
- 文字化け⇒mt-config.cgiに「SQLSetNames 1」を追記
- ダイナミック・パブリッシング(Perl版)の再設定(DB接続情報が記述されてるファイルの再構築)
- 表示に必要なファイルやパーツ・モジュールを再構築
- 共有SSLを用いていれば、URLの書き換え
FreshReader
動かなくなったので以下の2点で対処。
■htaccessに「AddHandler application/x-httpd-php5cgi .php」を追加
php.iniを作り、
「zend_extension = /virtual/ユーザ名/public_html/Freshreaderのディレクトリ/ioncube/ioncube_loader_lin_5.2.so」
の記述を行って設置。
Scuttle
文字化け直らず。ダメだこりゃ・・・ショボーン
その他もろもろ
色んなCMSとかテスト中。。。
まとめ
PHP4からPHP5に移行する事でちょびっと影響の出た点や、MySQL4からMySQL5に移行する点が非常に不安だったりでした。
Scuttleが持って行けてないままなので、どうしようかなー?と思考中。
あとは夜中に行う予定だったのですが、他の作業でずれ込んで結局昼間にやっちゃってました。
こりゃー!!みたいな。
移動元と移動先のパーミッション確認は必須ですね。
OpenPNEとかzen-cartみたいにより大量なファイルだったり、きちんと設定する必要のあるものは特に要注意かと思います。
以上で楽しい移転作業は終り。