2011-06-30

[Redmine]Redmineをリストアするよ

正確にはデータ移行というけれども。
筆者はMacBookProでRedmineを運用していたが、このたびiMacを購入することになった。
なのでmacBookProにあるRedmineのデータをすべてiMacに移すこととする。

前提条件
最低必要なソフトをインストールしていること
•ruby 1.8.7
•gem 1.3.5(Ruby用のパッケージ管理ソフトでRedmineのインストールに必要なソフトをインストールする為に使う)
•Rails(Redmineのバージョンによって異なる)
移行前のRedmineのバージョンを確認しておくこと
→SVNからソースコードを取ってきた場合はリビジョンを確認すること(以下の移行手順通りに行ってもメソッドが無かったり、RoleのエラーでRedmineが使用できなくなります)

事前準備
gemをアップデート
sudo gem update

最新のsqlite3のRuby用アクセスライブラリをインストールする
sudo gem install sqlite3-ruby -v 1.3.3

国際化に必要なソフトのインストール
sudo gem install i18n -v 0.4.2

Railsのインストール
sudo gem install rails -v 2.3.11

gemでインストールする際に必要とあれば
gem list -d rails
など実行して確認したほうがいいと思います(実は作業中に2個ぐらい同じソフトがインストールされていて焦った)


インストール
ソースコードのチェックアウト(チェックアウト場所はHOMEディレクトリ)
svn checkout http://redmine.rubyforge.org/svn/trunk/<リビジョン番号>
リビジョン番号は@の後に数字を入れる(@1500等)

ディレクトリ名がtrunkだと少し嫌なので、ディレクトリ名を変更する
mv trunk Redmine

sqlite3を使うようにyamlファイルを編集する
~/Redmine/config/database.yml
内容は以下のようにする。

production:
adapter: sqlite3
database: db/redmine.db
timeout: 5000

adapterは必ずsqlite3にする
databaseはデータベースファイル名を意味する(ファイル自身は自動される)
timeoutは対アウト時間。今回5000ミリ秒を設定している

セッションストア秘密鍵を生成する
rake config/initializers/session_store.rb

データベース上にテーブルを作成する
rake db:migrate RAILS_ENV="production"

データベースのテーブルにデフォルトのデータを登録する
rake redmine:load_default_data RAILS_ENV="production"

Redmineを起動してバージョンを確認する
ruby script/server webrick -e production

バージョンを確認して移行前と同じRedmine確認する。
確認がとれたら復元を行う。

復元を行う
DBの復元を行う
Sqlite3の場合以前にも書いた方法か、dbファイルを丸ごとコピーするだけでよい
~/Redmine/dbにdbファイルが存在しているので、移行元のdbファイルを上書きコピーする

ファイルの復元を行う
~/Redmine/filesにあるファイルを丸ごとコピーする

これだけで移行ができた。


くれぐれも注意することは同じバージョンのRedmineを使用すること。
Roleだったっり、メソッドが無い等のエラーで泣かされることになります。

1 件のコメント:

  1. Redmineのversion違いには涙した経験があるからねー
    とりあえずiMac祭りおめでとう :-)

    返信削除

Blogger Syntax Highliter