インストールしたシステムの移動
From LimeSurvey Manual
新しいサーバーに、インストールしたシステムを移動することがあるかもしれません。大体は簡単なのですが、いろいろと要素がからんで厄介になることもありえます。以下で、移動する方法と注意点、問題があった時のリカバー方法を記します。
一般に、クリーンインストールしたときの新しいLimesurveyは下のような違いがあるだけです:
- config.php がインストールやその後のカスタマイズのときのパラメータを持っています。
- upload/* に、カスタムテンプレートやその他のアップロードファイルが入っているかも知れません。
- インストール時につくられた SQL database tables にデータが入っているでしょう。また、トークンや回答データを格納するために、新しいテーブルも作られています。古い回答なども同様です。テーブル名は、通常 lime_survey_nnn... lime_tokens_nnn... lime_oldsurvey_nnn lime_oldtokens_nnn といった感じです。
特にコードにパッチをあてたりしたのでなければ、違うのはそのあたりだけです。
インストールの移動時にやるべきことは、アップグレードと同様です。いちばんの違いは、新しくインストールを行うという点くらいです。新バージョンへのアップグレードも併せて行いたい場合は、後回しにして、移動したシステムがちゃんと動くのを確認してからにしましょう。
移動手順
- 旧リリースを保存します
- インストールディレクトリーとSQLデータベースをバックアップします
- コマンドラインツールで、ディレクトリツリーを丸ごと .zip ファイルのようなものにしてしまいます
- phpMyAdminのようなツールで、全テーブルをエクスポートします。または、高度な設定タブの設定ダイアログにあるLimeSurveyデータベース全体のバックアップボタンを使用します
- 編集しやすいよう、config.phpを別にコピーしておきます
- インストールディレクトリーとSQLデータベースをバックアップします
- 保存したものを新しいマシンに移動します
- インストールファイルを展開します
- インストールディレクトリを新たに作ります(同じ名前がよいでしょう)
- フォルダー構成を維持してファイルを展開します
- SQLデータベースをセットアップします
- phpMyAdminやその他のコマンドラインで新たにデータベースを作成します
- 保存してあったデータベースからテーブルとその内容を再生成します
- インストールファイルを展開します
- config.phpを編集して新サーバーにあうように直し、チェックします
- データベース名、ユーザー名、パスワードをちゃんとチェックしましょう。サーバー名やURLのパス、ディレクトリのパスも同様です。
- アンケート管理ページにアクセスしてみて、期待通りに動いているかを確認します。
- 完了です:)
LimeSurveyのインストール場所を変更せずにアップグレードする場合は、新しいLimeSurveyバージョンへのアップグレードに関するセクションに記載されているプロセスと同じことを実行します。
うまくいかない場合
簡単なようですが、時々うまくいかないことがあります。まず深呼吸し、ステップを完全に実行したかを確認します。または、以下を読んで、他の人が途中でつまづいたポイントを確認してください。
マシン間で異なるPHPバージョンを使っている
マシン間で異なるSQLデータベースを使っている
LimeSurveyのバージョンが異なる(インストールファイルとバックアップしたDBファイルのアーカイブが適合しない)
バックアップされたSQLデータベースに適合する正しいインストールバックアップコードがない可能性があります。これらの別々のバックアップによって混乱したり、同期できなかったり、バラバラになってしまいがちです。各バックアップのバージョンを確認するのに役立つことがいくつかあります。LimeSurveyのSQLバックアップオプションを使用する場合、作成される既定のファイルには、名前にバックアップの日付が入ります。また、SQLデータベースのバックアップファイル内を検索すると、以下の例にあるような、データベースのバージョンが格納されているセクションがあります。
#-----------------------------------------------------------------------
# Table data for lime_settings_global
#-----------------------------------------------------------------------
INSERT INTO lime_settings_global VALUES("DBVersion","126");
....
インストーラーは、アップグレード時にテーブルを変更する方法を決定するため、この値を使用します。