我正在运行CentOS6并从源代码安装Ruby,以及Rails和其他一些工作人员。
ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]
rails -v
Rails 3.1.3
一些宝石:
*** LOCAL GEMS *** actionmailer (3.1.3, 2.3.14) actionpack (3.1.3, 2.3.14) activemodel (3.1.3) activerecord (3.1.3, 2.3.14) activeresource (3.1.3, 2.3.14) activesupport (3.1.3, 2.3.14) archive-tar-minitar (0.5.2) arel (2.2.1) bigdecimal (1.1.0) bouncy-castle-java (1.5.0146.1) builder (3.0.0) bundler (1.0.21) coderay (0.9.7) columnize (0.3.5) edavis10-object_daddy (0.4.3) erubis (2.7.0) fastercsv (1.5.0) ffi (1.0.11) hike (1.2.1) hoe (2.12.4) i18n (0.6.0, 0.4.2) io-console (0.3) jruby-openssl (0.7.4) json (1.5.4) linecache19 (0.5.13) mail (2.3.0) metaclass (0.0.1) mime-types (1.17.2) minitest (2.5.1) mocha (0.10.0) multi_json (1.0.4) mysql (2.8.1) mysql2 (0.3.11, 0.2.7) net-ldap (0.2.2) polyglot (0.3.3) rack (1.3.5, 1.1.2) rack-cache (1.1) rack-mount (0.8.3) rack-ssl (1.3.2) rack-test (0.6.1) rails (3.1.3, 2.3.14) railties (3.1.3) rake (0.9.2.2) rdoc (3.9.4) rmagick (2.13.1) ruby-debug-base19 (0.11.26, 0.11.25) ruby-debug19 (0.11.6) ruby-mysql (2.9.4) ruby-openid (2.1.4) ruby_core_source (0.1.5) rubygems-update (1.8.12) rubytree (0.5.2) shoulda (2.11.3, 2.10.3) sprockets (2.0.3) sqlite3 (1.3.5, 0.1.1) sqlite3-ruby (1.3.3, 1.2.5) thor (0.14.6) tilt (1.3.3) treetop (1.4.10) tzinfo (0.3.31)
我需要Rails才能运行chiliproject
,但是在运行以下命令时
RAILS_ENV=production bundle exec rake db:migrate
我明白了:
!!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql. rake aborted! cannot load such file -- mysql Tasks: TOP => db:migrate => environment (See full trace by running task with --trace)
现在使用--trace
:
RAILS_ENV=production bundle exec rake db:migrate --trace >> tmp/rake ** Invoke db:migrate (first_time) ** Invoke environment (first_time) ** Execute environment !!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql. rake aborted! cannot load such file -- mysql /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/kernel/requires.rb:7:in `block in require_library_or_gem' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/kernel/reporting.rb:11:in `silence_warnings' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/kernel/requires.rb:5:in `require_library_or_gem' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/mysql_adapter.rb:61:in `mysql_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:223:in `new_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:245:in `checkout_new_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:188:in `block (2 levels) in checkout' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:in `loop' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:184:in `block in checkout' /usr/local/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:183:in `checkout' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:98:in `connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_pool.rb:326:in `retrieve_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:123:in `retrieve_connection' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:115:in `connection' /var/www/html/chiliproject/vendor/plugins/awesome_nested_set/lib/awesome_nested_set.rb:218:in `quoted_left_column_name' /var/www/html/chiliproject/vendor/plugins/awesome_nested_set/lib/awesome_nested_set.rb:94:in `acts_as_nested_set' /var/www/html/chiliproject/app/models/issue.rb:33:in `' /var/www/html/chiliproject/app/models/issue.rb:15:in `' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:184:in `require' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:291:in `require_or_load' /var/www/html/chiliproject/vendor/plugins/engines/lib/engines/rails_extensions/dependencies.rb:133:in `require_or_load_with_engine_additions' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:451:in `load_missing_constant' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:106:in `const_missing_with_dependencies' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:118:in `const_missing' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rb:375:in `const_get' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rb:375:in `block in constantize' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rb:374:in `each' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/inflector.rb:374:in `constantize' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/core_ext/string/inflections.rb:162:in `constantize' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:157:in `observed_class' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:183:in `observed_classes' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:166:in `initialize' /usr/local/lib/ruby/1.9.1/singleton.rb:141:in `new' /usr/local/lib/ruby/1.9.1/singleton.rb:141:in `block in instance' :10:in `synchronize' /usr/local/lib/ruby/1.9.1/singleton.rb:139:in `instance' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:38:in `block in instantiate_observers' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:36:in `each' /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-2.3.14/lib/active_record/observer.rb:36:in `instantiate_observers' /usr/local/lib/ruby/gems/1.9.1/gems/actionpack-2.3.14/lib/action_controller/dispatcher.rb:15:in `block in define_dispatcher_callbacks' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:182:in `call' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:182:in `evaluate_method' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:166:in `call' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:90:in `block in run' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:90:in `each' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:90:in `run' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/callbacks.rb:276:in `run_callbacks' /usr/local/lib/ruby/gems/1.9.1/gems/actionpack-2.3.14/lib/action_controller/dispatcher.rb:51:in `run_prepare_callbacks' /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/initializer.rb:631:in `prepare_dispatcher' /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/initializer.rb:185:in `process' /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/initializer.rb:113:in `run' /var/www/html/chiliproject/config/environment.rb:39:in `' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:182:in `require' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:182:in `block in require' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:547:in `new_constants_in' /usr/local/lib/ruby/gems/1.9.1/gems/activesupport-2.3.14/lib/active_support/dependencies.rb:182:in `require' /usr/local/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/tasks/misc.rake:4:in `block in ' /usr/local/lib/ruby/1.9.1/rake/task.rb:205:in `call' /usr/local/lib/ruby/1.9.1/rake/task.rb:205:in `block in execute' /usr/local/lib/ruby/1.9.1/rake/task.rb:200:in `each' /usr/local/lib/ruby/1.9.1/rake/task.rb:200:in `execute' /usr/local/lib/ruby/1.9.1/rake/task.rb:158:in `block in invoke_with_call_chain' /usr/local/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' /usr/local/lib/ruby/1.9.1/rake/task.rb:151:in `invoke_with_call_chain' /usr/local/lib/ruby/1.9.1/rake/task.rb:176:in `block in invoke_prerequisites' /usr/local/lib/ruby/1.9.1/rake/task.rb:174:in `each' /usr/local/lib/ruby/1.9.1/rake/task.rb:174:in `invoke_prerequisites' /usr/local/lib/ruby/1.9.1/rake/task.rb:157:in `block in invoke_with_call_chain' /usr/local/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize' /usr/local/lib/ruby/1.9.1/rake/task.rb:151:in `invoke_with_call_chain' /usr/local/lib/ruby/1.9.1/rake/task.rb:144:in `invoke' /usr/local/lib/ruby/1.9.1/rake/application.rb:116:in `invoke_task' /usr/local/lib/ruby/1.9.1/rake/application.rb:94:in `block (2 levels) in top_level' /usr/local/lib/ruby/1.9.1/rake/application.rb:94:in `each' /usr/local/lib/ruby/1.9.1/rake/application.rb:94:in `block in top_level' /usr/local/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling' /usr/local/lib/ruby/1.9.1/rake/application.rb:88:in `top_level' /usr/local/lib/ruby/1.9.1/rake/application.rb:66:in `block in run' /usr/local/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling' /usr/local/lib/ruby/1.9.1/rake/application.rb:63:in `run' /usr/local/bin/rake:32:in `' Tasks: TOP => db:migrate => environment
有谁知道mysql gem文件有什么问题?
我也尝试过像这样安装mysql gem文件
gem install ruby-mysql2 --no-rdoc --no-ri -- --with-mysql-config=/usr/bin/mysql_config
答案 0 :(得分:9)
我遇到了类似的问题,你可能正在做我的工作:我正在使用'gem list'来确定安装的内容(它列出*** LOCAL GEMS ***
就像你展示的那样)我看到{{1} },但我的项目的mysql
不需要Gemfile
来安装bundler
。
如果你只输入mysql
它会列出'mysql'吗?如果没有,那么bundle show
中的Gemfile
不会导致chiliproject
安装bundler
。我发现这一切都非常令人困惑,直到我意识到我混淆了管理宝石安装的不同方法。
如果您或其他人以这种方式遇到同样的问题,那么这可能会有所帮助。 (也许这个糟糕的解释会鼓励其中一位铁路大师为我们详细说明。)
换句话说,您本地安装的宝石列表与您应用的捆绑宝石中安装的列表不同(因此{{1}的名称工具来自)。当您运行应用程序并使用mysql
管理其依赖项时,您必须在bundler
范围内执行所有操作,以确保它们一起运行。当你这样做时,它实际上是非常直接的并且为你解决了很多问题,但是如果你来自以前没有使用bundler
的应用程序的经验那么它只需要一点时间习惯。< / p>
答案 1 :(得分:3)
对我有用的两个步骤:
从/libhttp://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/复制文件libmySQL.dll选择(在文件夹/ lib /中)c:/ your / path / to / ruby / bin(确保你的ruby bin在你的系统PATH环境变量中)
使用ruby1.8为MySQL提供默认设置。如果您使用MySQL和ruby1.9运行Redmine,请在/config/database.yml文件中将适配器名称替换为mysql2
http://www.redmine.org/issues/10566
答案 2 :(得分:3)
在捆绑安装上尝试此&gt;&gt;
bundle install --without=test development sqlite postgres mysql rmagick
这将安装所有必需的基本依赖项,即mysql2数据库适配器 原因mysql适配器与Ruby 1.9不兼容
不要忘记更改config / database.yml - &gt; S / MySQL的/ mysql2
\ O /