管理しているリポジトリをささっと見渡したり、プロジェクトのタスク管理にRedmineはとても便利。しばらくサーバの移転やなんやかんやでちゃんと動く自前のRedmineを持っていなかった。
今回、Linodeで借りているUbuntuにRedmineをセットアップすることにした。
一人で使うのであんまり凝ったこともしたくないので、aptでさくっといれよう。…が、20分ぐらいハマった。
ソースから最新版を入れる手順はあちこちで見つかるのだけど、aptでUbuntuのパッケージからMySQLの環境に入れるときの注意点としてメモ。
- MySQLの照合順序がデフォルトではlatin1_swedish_ciになる。
- aptのRedmine設定ではMySQLの照合順序を意識していない。
- latin1_swedish_ciのデータベースにテープルを作るので、テーブルの照合順序もlatin1_swedish_ciになる。
- データベース作成、テーブル作成が済んだ後で、初期投入されるトラッカーやロールの日本語文字が化ける。
ということらしい。
結局、以下の手順でなんとかなった。
- apt-get install redmineで一旦最後まで導入。次にテーブルを全部削除。データベースは削除しない。(あるいはデータベース毎削除しておいてCREATE DATABASEしてもいいと思う。)
- データベースの照合順序をutf8_general_ciに変更する。
ALTER DATABASE `redmine_default` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
- dpkg-reconfigure redmine を実施。データベースの作成の処理はすでに存在しているので、スキップされ、テーブルが作成される。このとき、先に指定したデーベースの照合順序utf8_general_ciが使われる。
- reconfigureによって正しい照合順序が設定されたテーブルに初期データが投入される。
aptのMySQLのデータベース作成、テーブル作成スクリプト部分に照合順序をutf8_general_ciにするように書いといてもらうことはできないものかな。
latin1で問題がでる場合はあっても、utf8で問題がでる場合はほとんどないような気がするのだけど。なんか理由があるのかもしれない。
コメントは停止中です。