Pages

2011年5月8日日曜日

さくら(VPS)大戦 Redmine 編

さくらインターネットVPSのサーバに、ruby on rails製プロジェクト管理ソフトウエア Redmine をインストールした。過去サーバを設定した時の資料を見なかったこともあり、結構苦戦。

以下、失敗したところを記載しておく。実際の手順や詳細などは、以下のサイトを参考。
Mysql 5.5の評価など
version 5.5へのアップグレード
mysql_upgradeコマンド
さくらサーバへのインストールもろもろ
全般の工程(この方のサイト・デザインは美しい)
全般の工程 (たぶん、一番詳しい)

redmine用のデータベースを作成後
  $ wget http://rubyforge.org/frs/download.php/74722/redmine-1.1.3.tar.gz
  $ tar xzvf redmine-1.1.3.tar.gz 
  $ mv redmine-1.1.3 /var/www/html/redmine
  $ cd /var/www/html/config/
  $ cp database.yml.example database.yml
  $ vim database.yml
  $ rake generate_session_store
  $ rake db:migrate RAILS_ENV=production # 失敗
redmineの1.1.3は、rails 2.3.5で動作している。
  $ vim environment.rb 
  $ gem install rails -v=2.3.5
  $ rake db:migrate RAILS_ENV=production # 失敗
railsのmysqlドライバーは、2.2以降標準ではインストールされない。mysqlの接続に失敗。
  $ yum install mysql-devel
失敗。remi リポジトリからインストールしていた特別なVersionのMysqlだった。
  $ mysql --version
  $ yum install mysql-devel --enablerepo=remi
失敗。i386用のmysqlやmysql-develもアップグレードしようとしている。
さくらのVPSのCentOSは64bit。i386ではなくx86_64のみを指定。
  $ yum install mysql-devel.x86_64 --enablerepo=remi
結果、mysql 5.1 -> 5.5 に変更された。
mysqlドライバーをインストール。
  $ gem install mysql
  $ cd /var/www/html/redmine
  $ rake db:migrate RAILS_ENV=production
失敗。mysqldが起動していない。
  $ /etc/init.d/mysqld start
失敗する。ログをみると、
[ERROR] /usr/libexec/mysqld: unknown variable 'default-character-set=utf8'
とりあえず、/etc/my.cnfの[mysqld]の default-character-set=utf8 をコメントアウト
  $ /etc/init.d/mysqld start
  $ vim /var/log/mysqld.log
起動に成功したが、エラーが一杯でている。mysql_upgradeをやる。
  $ mysql_upgrade -p
  $ /etc/init.d/mysqld restart
logでは問題ないようだ。
mysql5.5では、文字列指定のオプションが変更されている。
サーバー側 --character-set-server
クライアント側 --default-character-set (今まで通り)
よって、/etc/my.cnf [mysqld] 内の指定を charset-set-server=utf8 と書き換える。
Redmineのスキーマ作成、初期データ作成(途中で、jaと指定)
  $ vim /etc/my.cnf
  $ /etc/init.d/mysqld restart
  $ rake db:migrate RAILS_ENV=production
  $ rake redmine:load_default_data RAILS_ENV=production
メールも設定
  $ cp config/email.yml.example config/email.yml
  $ vim config/email.yml
さくらのドメインサービスにて、redmine.xxxxをバーチャルホストとして指定
passenger用にヴァーチャルホスト設定を追加
  $ vim /etc/httpd/conf.d/vhost.conf 
  $ /etc/init.d/httpd restart

結局、過去の更新、設定記録を見なかった事が敗因。PHP5.3 をインストールするために、CentOSのデフォルトmysqlのVersino 5.0.x ではなく、5.1.x を入れた時の記録。これがあれば、随分と工数削減できたかも。

0 件のコメント:

コメントを投稿