RuntimeError与mysql2和rails3(bundler)

我得到这个错误

`establish_connection': Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (no such file to load -- active_record/connection_adapters/mysql2_adapter) (RuntimeError) from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activerecord- 

这里是整个错误的转储和我的configuration和gemfile。

从Ubuntu 11.10升级到12.04之后,我遇到了同样的错误。 这是我如何解决这个问题:

 gem uninstall mysql2 bundle 

我认为这里的关键是'原生扩展' – 我想当我安装最后,我使用的是不同版本的MySQL。

 Installing mysql2 (0.3.11) with native extensions 

我在使用rails 3.0.7和mysql2 0.3.2时遇到了同样的错误。 我在这里find的解决scheme是使用旧版本的mysql2。 因此编辑你的gemfile

 gem 'mysql2', '< 0.3' 

并运行

 bundle install 

还需要更改适配器从mysql到database.yml mysql2在这里安装mysql2的雪豹Leopard 3 rvm

从:

development: adapter: mysql

至:

development: adapter: mysql2

你有没有在你的gemfile中包含mysql2 gem而不是旧的mysql gem,然后运行bundle install?

如果您使用的是rvm,并且可能在rvm之外添加了mysql2,请尝试以下步骤:确认您的Gemfile说:

 gem 'mysql2' 

或Rails2.x:

 gem 'mysql2', '~> 0.2.11' 

然后:

 $ cd RAILS_ROOT $ gem uninstall mysql2 Select gem to uninstall: 1. mysql2-0.2.11 2. mysql2-0.3.6 3. All versions > 3 # select "All versions" $ rvm gemset install mysql2 $ bundle install 

现在轨道应该正常启动。

这也解决了我的问题:

 Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (no such file to load -- active_record/connection_adapters/mysql2_adapter) 

您实际上需要运行:gem install mysql2并将gem添加到您的configuration中。

只需运行“gem install mysql”,也可以在gemfile中添加相同的文件并运行bundle。 工作

如果有人仍然面临在Windows上安装使用rails 3的mysql2 gem的问题,请参阅安装的详细步骤 –

http://rorguide.blogspot.com/2011/03/installing-mysql2-gem-on-ruby-192-and.html

我是一个ruby,rails和linux的初学者。 所以如果这个解决scheme不起作用,我不承担任何责任:)

步骤1:

 sudo gem uninstall mysql2 

第2步:

 sudo gem install mysql -v 0.2.7 

开始webrick,如果还是出现同样的问题重新安装rails。

这个解决scheme适用于我。

我也是同样的问题。 升级到Rails 3.1.rc4,然后降级到3.0.3。 为我工作。

从0.3.0开始,ActiveRecord 3.1 – ActiveRecord适配器已经从这个gem中拉出来并进入ActiveRecord本身。 如果您需要使用Rails版本<3.1的mysql2,请确保在Gemfile中指定gem“mysql2”,“〜> 0.2.7”

缺less的文件( no such file to load )可以在mysql2的0.3.0之前的版本中find。

引用了mysql2的文档