설치 환경
OS : WINDOW
APM : XAMPP 1.7.7 ( 2011.12. 15
Redmine Version : 1.3.0 ( 2011.12.15)
SVN Server : VisualSVN
추가 : 개인적 취향으로 무설치 portable을 좋아하기 때문에
가능한한 portable로 설치 위주로 한다.
3.redmine 설정
3-1.xampp에 apache / mysql on
3-2.mysql에 redmine 디비 생성 / 계정 생성
create database redmine character set utf8;
create user 'redmineUser'@'localhost' identified by 'myPassword';
grant all privileges on redmine.* to 'redmineUser'@'localhost';
당연히 redmineUser와 password는 입맛대로 바꿔도 된다.
3-3. xampp\project\redmine\config\database.yml 설정
# MySQL (default setup).
production:
adapter: mysql
database: redmine
host: localhost
username: 만든 mysql계정
password: 만든 비밀번호
encoding: utf8
3-4. cmd 창에서 xampp\project\redmine으로 이동
set RAILS_ENV=production
rake config/initializers/session_store.rb
rake generate_session_store
rake db:migrate
순차적으로 입력한다.
문제 상황 #1.
1. 만일 rake generate_session_store 시
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on o
r after 2011-11-01.
Gem.source_index called from F:/work/xampp/project/redmine/config/../vendor/rail
s/railties/lib/rails/gem_dependency.rb:21.
rake aborted!
uninitialized constant Gem::SyckDefaultKey
(See full trace by running task with --trace)
이와 같은 메세지가 나오는 경우는 rake 버전이 요구 버전과 맞지 않아서이다(완전 괘삽질함)
2. rake 버전 확인해 본다(rack아니다 rake다. 난 루비전문이 아니라 순간 헷갈렸다.)
gem list -d rake
*** LOCAL GEMS ***
rake (0.9.2.2)
Author: Jim Weirich
Rubyforge: http://rubyforge.org/projects/rake
Homepage: http://rake.rubyforge.org
Installed at: F:/work/xampp/ruby/lib/ruby/gems/1.8
3. 0.8.7버전이 아니면 삭제 한다. 여러개 설치 되있으면 죄다 지운다.
gem uninstall rake -v=0.9.2.2
You have requested to uninstall the gem:
rake-0.9.2.2
rails-2.3.14 depends on [rake (>= 0.8.3)]
If you remove this gems, one or more dependencies will not be met.
Continue with Uninstall? [Yn] y
Remove executables:
rake
in addition to the gem? [Yn] y
Removing rake
Successfully uninstalled rake-0.9.2.2
4. gem list -d rake 확인해 본다
*** LOCAL GEMS ***
5.rake 0.8.7 버전 설치 한다
gem install rake -v=0.8.7
Fetching: rake-0.8.7.gem (100%)
Successfully installed rake-0.8.7
1 gem installed
Installing ri documentation for rake-0.8.7...
Installing RDoc documentation for rake-0.8.7...
6.0.8.7인지 확인해 본다
*** LOCAL GEMS ***
rake (0.8.7)
Author: Jim Weirich
Rubyforge: http://rubyforge.org/projects/rake
Homepage: http://rake.rubyforge.org
Installed at: F:/work/xampp/ruby/lib/ruby/gems/1.8
Ruby based make-like utility.
다시
set RAILS_ENV=production
rake generate_session_store
rake db:migrate
해본다.
문제 상황 #2.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on o
r after 2011-11-01.
Gem.source_index called from F:/work/xampp/project/redmine/config/../vendor/rail
s/railties/lib/rails/gem_dependency.rb:21.
rake aborted!
uninitialized constant Gem::SyckDefaultKey
(See full trace by running task with --trace)
위쪽 문제 상황 #1을 하고 난뒤에
rake config/initializers/session_store.rb나
rake generate_session_store나
rake db:migrate 할 시 아래와 같이 문제상황 #1과 같은 지속적인 에러가 날 경우.
gem 버전을 확인해 본다
gem list나 gem -v를 하면 1.3.7버전이 나와야 한다.
나같은 경우는 1.8.xx 버전이 나왔다.(아마 작업 초반에 gem update 를 실행해서
자동으로 최신게 받아져서 그런거 같다.
gem list 시 rubygems-update-1.8.12(나 같은 경우임)가 보이면 삭제한다.
그 후 gem 1.3.7로 업데이트 한다.
gem update --system 1.3.7
Installing RubyGems 1.3.7
RubyGems 1.3.7 installed
癤?== 1.3.7 / 2010-05-13
NOTE:
http://rubygems.org is now the default source for downloading gems.
You may have sources set via ~/.gemrc, so you should replace
http://gems.rubyforge.org with http://rubygems.org
http://gems.rubyforge.org will continue to work for the forseeable future.
New features:
* `gem` commands
* `gem install` and `gem fetch` now report alternate platforms when a
matching one couldn't be found.
* `gem contents` --prefix is now the default as specified in --help. Bug
#27211 by Mamoru Tasaka.
* `gem fetch` can fetch of old versions again. Bug #27960 by Eric Hankins.
* `gem query` and friends output now lists platforms. Bug #27856 by Greg
Hazel.
* `gem server` now allows specification of multiple gem dirs for
documentation. Bug #27573 by Yuki Sonoda.
* `gem unpack` can unpack gems again. Bug #27872 by Timothy Jones.
* `gem unpack` now unpacks remote gems.
* --user-install is no longer the default. If you really liked it, see
Gem::ConfigFile to learn how to set it by default. (This change was made
in 1.3.6)
* RubyGems now has platform support for IronRuby. Patch #27951 by Will Green.
Bug fixes:
* Require rubygems/custom_require if --disable-gem was set. Bug #27700 by
Roger Pack.
* RubyGems now protects against exceptions being raised by plugins.
* rubygems/builder now requires user_interaction. Ruby Bug #1040 by Phillip
Toland.
* Gem::Dependency support #version_requirements= with a warning. Fix for old
Rails versions. Bug #27868 by Wei Jen Lu.
* Gem::PackageTask depends on the package dir like the other rake package
tasks so dependencies can be hooked up correctly.
------------------------------------------------------------------------------
RubyGems installed the following executables:
F:/work/xampp/ruby/bin/gem
RubyGems system software updated
3-4-1. 문제 상황을 해결 하였다면 다시금 맘을 가듬고 해본다.
set RAILS_ENV=production
rake generate_session_store
rake db:migrate
3-4-2.
rake generate_session_store
Please install RDoc 2.4.2+ to generate documentation
나는 이런 메세지가 나왔는데 일단 무시했다.
3-4-3.rake db:migrate
rake db:migrate 시
(파일이 아예 없다고 뜨는데 지금은.
본래는 머가 안맞다고 뜬다. 아무튼 간에 xampp의 mysql/lib에 있는 LIBMYSQL.dll을 복사해서
ruby/bin에 넣어 준다. 아니면 첨부한 파일 받던가.
첨부파일 :
혹시 mysql에 connect할 수 없다고 나오면 cmd에서 mysql 해 보고 mysql 로긴이 되는지 보고
만일 안되면 환경 변수에 xampp/mysql/bin폴더를 등록 시키고 cmd 다시 열어서
rake db:migrate 해본다.
문제 상황 #3.
libmysql.dll이 에러가 나서 xampp 1.7.7/mysql/lib(대략 용량이 3.81M) 의 것을 복사해서 ruby/bin에 붙여놓고
다시 해보니 이번엔 연결을 할 수 없다고 에러가 나온다.
Mysql::Error: query: not connected: CREATE TABLE `schema_migrations` (`version`
varchar(255) NOT NULL) ENGINE=InnoDB
이 또한 libmysql.dll 때문이다.
뒤지던 중 다른 libmysql.dll( 대략 1.4MB)을 구해서 복사한다.
첨부파일 :
참고 내것의 redmine/config/database.yml의 설정은
# MySQL (default setup).
production:
adapter: mysql
database: redmine
host: localhost
username: 아이디
password: 비번
encoding: utf8
development:
adapter: mysql
database: redmine
host: localhost
username: 아이디
password: 비번
encoding: utf8요렇게 설정 되어 있다.
rake db:migrate 했을 시 별 문제 없다면
엄청난 메세지와 함께 테이블을 쫙 만들 것이다.
mysql에 redmine 디비에 테이블 생성 됬느지 확인 해보면 된다.
너무 길어 걍 젤 마지막 문구
== CreateChangesetParents: migrated (0.3281s) ================================
libmysql.dll 참조한 페이지
http://railsforum.com/viewtopic.php?id=34012
이쯤 되면 redmine이 뜨는지 확인해 본다
cmd에서 redmine 폴더에서 아래 실행
ruby script/server -e production
=> Booting Mongrel
=> Rails 2.3.14 application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
보시다 시피 포트는 3000번이다
웹 브라우저로 확인 해본다
http://localhost:3000
css나 jquery가 알맞게 먹어서 정상적인(?) redmine 홈페이지 첫 화면이 나오면 된다.
4.mongrel_service 남았따.
_M#]
흠흠.