web-dev-qa-db-ja.com

mysql2およびRails3(バンドラー)でのRuntimeError

このエラーが表示されます

`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-

ここ は、エラー全体と私の設定およびgemfileのダンプです。

76
Swistak

Ubuntu 11.10から12.04にアップグレードした後、同じエラーが発生しました。これは私が問題を修正した方法です:

gem uninstall mysql2
bundle

ここで重要なのは「ネイティブ拡張」だと思います-最後にインストールしたとき、mysqlの異なるバージョンを使用していたと思います。

Installing mysql2 (0.3.11) with native extensions
0
Josh W Lewis

Rails 3.0.7およびmysql2 0.3.2。を使用中に同じエラーが発生しました。私が見つけた解決策は、 here mysql2のバージョン。したがって、gemfileを編集して

gem 'mysql2', '< 0.3'

そして走る

bundle install 
101
stream7

ここで述べたように、database.ymlでアダプターをmysqlからmysql2に変更する必要もあります Rails 3のSnow Leopardにmysql2 gemをインストールrvm

から:

development: adapter: mysql

に:

development: adapter: mysql2

36
vrybas

古いmysql gemの代わりにmysql2 gemをgemfileに含め、その後バンドルインストールを実行しましたか?

14
amaseuk

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

これでRailsが正しく起動するはずです。

6
mmell

これにより、次の問題も修正されました。

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を設定に追加します。

3
maxkaplan

「gem install mysql」を実行するだけで、同じものをgemfileに追加してバンドルを実行します。働いた

2
supriya

WindowsでRails 3を使用してmysql2 gemをインストールする問題がまだ発生している場合は、次のインストール手順の詳細を参照してください。

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

2
Ritesh Kumar

私にも同じ問題。 Rails 3.1.rc4にアップグレードしてから3.0.3にダウングレードしました。私のために働きました。

1
connie

私は、Ruby、Rails、およびlinuxの初心者です。したがって、このソリューションが機能しなかった場合、私は責任を負いません:)

ステップ1:

Sudo gem uninstall mysql2

ステップ2:

Sudo gem install mysql -v 0.2.7

同じ問題が引き続き発生する場合は、webrickを起動し、Railsを再インストールします。

このソリューションは私にとっては有効です。

1
Tim

0.3.0以降、およびActiveRecord 3.1-ActiveRecordアダプターは、このgemからActiveRecord自体に引き出されています。 Railsバージョン<3.1でmysql2を使用する必要がある場合は、Gemfileでgem "mysql2"、 "〜> 0.2.7"を指定してください。

不足しているファイル(no such file to load)は、mysql2の0.3.0以前のバージョンにあります。

mysql2のドキュメント から引用

0
Rafael Perea