在 Fedora 17 上安装 Redmine 时出现的 mysql2 适配器问题



我试图在Fedora 17上安装Redmine,遵循这个

在此步骤之前:

RAILS_ENV=production rake db:migrate

它抛出一个错误,说:

rake aborted!
Please install the mysql2 adapter: `gem install activerecord-mysql2-adapter` (cannot load such file -- mysql2/mysql2)
/var/www/redmine/lib/plugins/acts_as_activity_provider/init.rb:2:in `block in <top (required)>'
/var/www/redmine/config/initializers/00-core_plugins.rb:12:in `eval'
/var/www/redmine/config/initializers/00-core_plugins.rb:12:in `block in <top (required)>'
/var/www/redmine/config/initializers/00-core_plugins.rb:2:in `each'
/var/www/redmine/config/initializers/00-core_plugins.rb:2:in `<top (required)>'
/var/www/redmine/config/environment.rb:14:in `<top (required)>'
Tasks: TOP => db:migrate => environment

这很奇怪,因为我已经安装了带有捆绑包的 mysql2:

bundle show
...
* mysql2 (0.3.11)//***which is right in the bundle show list***
...

我的数据库.yml是这样的:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: 123456
  encoding: utf8

其他人我参与其中

    ruby 1.9.3p327 (2012-11-10 revision 37606) [i386-linux]
    Rails 3.2.8                                          
    gem 1.8.24
    mysql  Ver 14.14 Distrib 5.5.28, for Linux (i686) using readline 5.1
    Redmine 2.1.3

我在谷歌上找到了一些相关的问题,比如:http://www.redmine.org/issues/11071#note-4我按照他们说的做,添加符号链接

ln -s /usr/local/share/gems/gems/mysql2-0.3.11/lib /usr/share/ruby/mysql2

然后完全按照页面中发布的那样:

rake aborted!
uninitialized constant Mysql2::Client::REMEMBER_OPTIONS

试图做#6中发布的内容,但它对我不起作用。这是解决我的问题的正确方法吗,我应该如何处理第二个错误。

gemfile 中添加gem 'mysql2'并运行bundle install然后执行RAILS_ENV=production rake db:migrate

如果你使用的是Fedora的ruby,请尝试:

yum install ruby-mysql

如果您使用的是RVM或任何其他类似工具,请安装mysql的开发包,然后重新安装ruby mysql gem。

yum install mysql-devel

> add gem "minitest" into Gemfile
> gem list | cut -d" " -f1 | xargs gem uninstall -aIx
> yum erase rubygem-activesupport-3.0.11-5.fc17.noarch
> yum install rubygem-bundler
> bundle install
> then other steps, this works!!

详情请参考谢谢!!

最新更新