2011-10-10 81 views
1

我刚刚安装了RVM,JRuby,Rails和MySQL,但是我在创建数据库时遇到了一些麻烦。当我运行rake db:create --trace我得到以下的输出:rake db:create not working with mysql database(OS X)

rake db:create --trace 
JRuby limited openssl loaded. http://jruby.org/openssl 
gem install jruby-openssl for full support. 
** Invoke db:create (first_time) 
** Invoke db:load_config (first_time) 
** Invoke rails_env (first_time) 
** Execute rails_env 
** Execute db:load_config 
** Execute db:create 
rake aborted! 
uninitialized constant Mysql::Error 
/Users/max/.rvm/gems/jruby-1.6.4/gems/activerecord-3.0.8/lib/active_record/railties/databases.rake:64:in `create_database' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/activerecord-3.0.8/lib/active_record/railties/databases.rake:33:in `(root)' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/task.rb:205:in `call' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/task.rb:205:in `execute' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/task.rb:200:in `each' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/task.rb:200:in `execute' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/task.rb:158:in `invoke_with_call_chain' 
/Users/max/.rvm/rubies/jruby-1.6.4/lib/ruby/1.8/monitor.rb:191:in `mon_synchronize' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/task.rb:151:in `invoke_with_call_chain' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/task.rb:144:in `invoke' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:112:in `invoke_task' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:90:in `top_level' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:90:in `each' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:90:in `top_level' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:84:in `top_level' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:62:in `run' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/lib/rake/application.rb:59:in `run' 
/Users/max/.rvm/gems/jruby-1.6.4/gems/rake-0.9.2/bin/rake:32:in `(root)' 
/Users/max/.rvm/gems/jruby-1.6.4/bin/rake:19:in `load' 
/Users/max/.rvm/gems/jruby-1.6.4/bin/rake:19:in `(root)' 
Tasks: TOP => db:create 

我不知道什么可能是错误的。有没有人有任何想法?

+0

你有在Gemfile中mysql的宝石和你运行'束install'? – drummondj

+1

http://infinite-sushi.com/2010/07/uninitialized-constant-mysqlerror-with-rails-3/ –

回答

2

你使用雪豹吗?

问题可能出现在Mysql版本和gem标志中。删除的Mysql 5.5,如果您有(MySQL 5.1中是一个稳定的版本)

在这里rake aborted! uninitialized constant Mysql2一看,这里http://geryit.com/blog/2011/01/installing-mysql-with-rails-on-mac-os-x-snow-leopard/

+0

我使用的Ubuntu和我不知道如何在Mac上的工作,但会建议,MySQL服务没有运行。即使我在Linux上,我仍然必须重新启动计算机,我忘了重新启动mysql。它不止一次地在我后面咬伤我。 – Tass

+1

在OS X上,您可以安装MySQL的偏好设置窗格。这给你即时的视觉确认MySQL正在运行。我还为MySQL服务器安装了一个启动项目,所以MySQL一直运行,除非我明确地告诉它停止或崩溃。 – Max

相关问题