尝试在Rails应用程序中安装Mysql时出现捆绑错误

时间:2016-01-08 20:16:09

标签: mysql ruby-on-rails rubygems bundler web-deployment

在我的Rails应用程序中运行bundle时,我在命令行中得到以下错误输出:

Using jquery-rails 4.0.5
Using jquery-ui-rails 5.0.5
Using mail_form 1.5.1
Installing mysql 2.9.1 with native extensions

Errno::EACCES: Permission denied @ rb_sysopen - /usr/local/lib/ruby/gems/2.2.0/gems/mysql-2.9.1/COPYING
An error occurred while installing mysql (2.9.1), and Bundler cannot continue.
Make sure that `gem install mysql -v '2.9.1'` succeeds before bundling.

我正在使用: rails -v :2.2.4

在我的 gemfile 中我对mysql有以下内容:

group :development do
  # Access an IRB console on exception pages or by using <%= console %> in views
  gem 'web-console', '~> 2.0'

  gem 'mysql', '~> 2.9', '>= 2.9.1'

  # Use Capistrano for deployment
  gem 'capistrano', '~> 3.4', require: false
  gem 'capistrano-bundler', require: false
  gem 'capistrano-rails', require: false
  gem 'capistrano-rbenv', github: 'capistrano/rbenv', require: false

  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'
end

检查Ruby版本($ ruby​​ -v)如果发生这样的事情,发现我的版本是2.0.0。 要修复此运行:

$ env | grep PATH
$ export PATH="$HOME/.rbenv/bin:$PATH"
$ eval "$(rbenv init -)"

1 个答案:

答案 0 :(得分:0)

所以,这最终变得非常简单。卸载并重新安装几个宝石后。我发现ruby版本由于某种原因被锁定为2.0.0。我已经添加了上面的修复程序。