2

このRedmine セットアップ チュートリアルに従おうとしています。サーバーを起動する時点で入力するsudo rails serverと、次のエラーが表示されます。

Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (mysql2 is not part of the bundle. Add it to Gemfile.) (LoadError)

私のGemfileの関連セクションは次のとおりです。

....
if File.exist?(database_file)
database_config = YAML::load(ERB.new(IO.read(database_file)).result)
adapters = database_config.values.map {|c| c['adapter']}.compact.uniq
if adapters.any?
  adapters.each do |adapter|
    case adapter
    when /mysql/
      gem "mysql", "~> 2.8.1", :platforms => [:mri_18, :mingw_18]
      gem "mysql2", "~> 0.3.11", :platforms => [:mri_19, :mingw_19]
      gem "activerecord-jdbcmysql-adapter", :platforms => :jruby
...

Gemfile.lock には mysql2 が含まれています。

...
multi_json (1.5.0)
mysql (2.8.1)
mysql2 (0.3.11)
net-ldap (0.3.1)
...

私のdatabase.ymlファイルには以下が含まれています:

...
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: ****
  password: ****

development:
  adapter: mysql2
  database: redmine_development
  host: localhost
  username: ****
  password: ****
  encoding: utf8
...

実行bundle installは成功しているように見えますが、mysql2 は出力にリストされず、which mysql2何も返されず、bundle show mysql2返されます。Could not find gem 'mysql2' in the current bundle.

mysql2 gem をアンインストールして再インストールしましたが、毎回明らかに成功しています。

他のスタックオーバーフローの質問で同様の問題の説明を読みましたが、私の問題を解決する解決策はありませんでした。

4

1 に答える 1