正確にはデータ移行というけれども。
筆者は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だったっり、メソッドが無い等のエラーで泣かされることになります。
Redmineのversion違いには涙した経験があるからねー
返信削除とりあえずiMac祭りおめでとう :-)