耙子流产了! 无法在El Capitan上加载这样的文件 – mysql2 / mysql2

我在过去两周内一直在尝试在Mac上设置我的代码。 以前我使用的是Ubuntu,设置代码从未如此困难。 我几乎遵循了所有教程,但没有运气。 请任何人都可以指导我在mac上设置RoR。 在完成所有教程后,我最终只得到了mysql错误。

rake aborted! cannot load such file -- mysql2/mysql2 /Users/sahil/Documents/work/ccprod/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `require' /Users/sahil/Documents/work/ccprod/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `block in require' /Users/sahil/Documents/work/ccprod/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:236:in `load_dependency' /Users/sahil/Documents/work/ccprod/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `require' /Users/sahil/Documents/work/ccprod/vendor/bundle/ruby/1.9.1/gems/mysql2-0.3.14/lib/mysql2.rb:8:in `' /Users/sahil/.rvm/gems/ruby-1.9.3-p551@global/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `require' /Users/sahil/.rvm/gems/ruby-1.9.3-p551@global/gems/bundler-1.10.6/lib/bundler/runtime.rb:76:in `block (2 levels) in require' /Users/sahil/.rvm/gems/ruby-1.9.3-p551@global/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `each' /Users/sahil/.rvm/gems/ruby-1.9.3-p551@global/gems/bundler-1.10.6/lib/bundler/runtime.rb:72:in `block in require' /Users/sahil/.rvm/gems/ruby-1.9.3-p551@global/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `each' /Users/sahil/.rvm/gems/ruby-1.9.3-p551@global/gems/bundler-1.10.6/lib/bundler/runtime.rb:61:in `require' /Users/sahil/.rvm/gems/ruby-1.9.3-p551@global/gems/bundler-1.10.6/lib/bundler.rb:134:in `require' /Users/sahil/Documents/work/ccprod/config/application.rb:9:in `' /Users/sahil/Documents/work/ccprod/Rakefile:4:in `' (See full trace by running task with --trace) 

如果需要任何其他信息,请告诉我。 从mysql网站安装MySQL。 额外细节:

 Server version: 5.5.46 MySQL Community Server (GPL) 

更新: Gemfile.lock文件:

 GIT remote: git://github.com/acumenbrands/acts_as_slugable.git revision: 51c739b8dc283483e8cb68be2f48f0742dadbf3d specs: acts_as_slugable (1.0) activerecord (>= 3.0.0) GIT remote: git://github.com/paneq/calendar_date_select.git revision: 977048211b94599fe0f08eb37a481f3d69df48f6 specs: calendar_date_select (1.16.2) GIT remote: git://github.com/rails/prototype_legacy_helper.git revision: a2cd95c3e3c1a4f7a9566efdab5ce59c886cb05f specs: prototype_legacy_helper (0.0.0) GIT remote: https://github.com/Gonzih/respond_to_parent.git revision: e7399307d70d00951916fd5e396c919cd7bb7f77 specs: respond_to_parent (0.0.3) rails (~> 3.2) GIT remote: https://github.com/jwhitehorn/acts_as_versioned.git revision: 44dfe632ba8c97c786cbc172a2da18a41b17f668 specs: acts_as_versioned (3.2.1) activerecord GEM remote: http://rubygems.org/ specs: actionmailer (3.2.14) actionpack (= 3.2.14) mail (~> 2.5.4) actionpack (3.2.14) activemodel (= 3.2.14) activesupport (= 3.2.14) builder (~> 3.0.0) erubis (~> 2.7.0) journey (~> 1.0.4) rack (~> 1.4.5) rack-cache (~> 1.2) rack-test (~> 0.6.1) sprockets (~> 2.2.1) active_scaffold (3.3.3) rails (~> 3.2.0) activemodel (3.2.14) activesupport (= 3.2.14) builder (~> 3.0.0) activerecord (3.2.14) activemodel (= 3.2.14) activesupport (= 3.2.14) arel (~> 3.0.2) tzinfo (~> 0.3.29) activeresource (3.2.14) activemodel (= 3.2.14) activesupport (= 3.2.14) activesupport (3.2.14) i18n (~> 0.6, >= 0.6.4) multi_json (~> 1.0) acts-as-taggable-on (3.0.0) rails (>= 3, = 1.8.0) atomic (1.1.14) autoparse (0.3.3) addressable (>= 2.3.1) extlib (>= 0.9.15) multi_json (>= 1.0.0) aws-sdk (1.31.3) json (~> 1.4) nokogiri (>= 1.4.4) uuidtools (~> 2.1) axiom-types (0.1.0) descendants_tracker (~> 0.0.3) ice_nine (~> 0.11.0) thread_safe (~> 0.1.3) babosa (0.3.11) bcrypt-ruby (3.1.2) better_errors (1.1.0) coderay (>= 1.0.0) erubis (>= 2.6.6) binding_of_caller (0.7.2) debug_inspector (>= 0.0.1) builder (3.0.4) bullet (4.7.1) activesupport uniform_notifier (>= 1.4.0) canonix (0.1.1) carrierwave (0.9.0) activemodel (>= 3.2.0) activesupport (>= 3.2.0) json (>= 1.7) celluloid (0.15.2) timers (~> 1.1.0) chartkick (1.3.2) chronic (0.10.2) ckeditor (4.0.7) mime-types orm_adapter climate_control (0.0.3) activesupport (>= 3.0) cocaine (0.5.3) climate_control (>= 0.0.3,  0.0.1) coffee-rails (3.2.2) coffee-script (>= 2.2.0) railties (~> 3.2.0) coffee-script (2.2.0) coffee-script-source execjs coffee-script-source (1.6.3) commonjs (0.2.7) connection_pool (1.2.0) crack (0.4.1) safe_yaml (~> 0.9.0) daemons (1.1.9) debug_inspector (0.0.2) delayed_job (4.0.0) activesupport (>= 3.0, = 3.0, = 3.0,  3.0.0) delayed_job (> 2.0.3) sinatra (>= 1.4.4) descendants_tracker (0.0.3) devise (3.2.2) bcrypt-ruby (~> 3.0) orm_adapter (~> 0.1) railties (>= 3.2.6,  0.1) warden (~> 1.2.3) devise-encryptable (0.1.2) devise (>= 2.1.0) dotenv (0.9.0) dynamic_form (1.1.4) equalizer (0.0.9) erubis (2.7.0) event-calendar (2.3.3) eventmachine (1.0.3) exception_notification (4.0.1) actionmailer (>= 3.0.4) activesupport (>= 3.0.4) excon (0.31.0) execjs (2.0.2) extlib (0.9.16) faraday (0.8.8) multipart-post (~> 1.2.0) fattr (2.2.1) fog (1.19.0) builder excon (~> 0.31.0) formatador (~> 0.2.0) mime-types multi_json (~> 1.0) net-scp (~> 1.1) net-ssh (>= 2.1.3) nokogiri (~> 1.5) ruby-hmac font-awesome-rails (4.2.0.0) railties (>= 3.2, = 0.7) thor (>= 0.13.6) formatador (0.2.4) god (0.13.4) google-api-client (0.6.4) addressable (>= 2.3.2) autoparse (>= 0.3.3) extlib (>= 0.9.15) faraday (~> 0.8.4) jwt (>= 0.1.5) launchy (>= 2.1.1) multi_json (>= 1.0.0) signet (~> 0.4.5) uuidtools (>= 2.1.0) grape (0.11.0) activesupport builder hashie (>= 2.1.0) multi_json (>= 1.3.2) multi_xml (>= 0.5.2) rack (>= 1.3.0) rack-accept rack-mount virtus (>= 1.0.0) hashie (3.4.0) highline (1.6.20) hike (1.2.3) httpauth (0.2.0) i18n (0.6.9) ice_nine (0.11.1) journey (1.0.4) jquery-rails (3.0.4) railties (>= 3.0, = 0.14, = 1.5) launchy (2.4.2) addressable (~> 2.3) less (2.5.1) commonjs (~> 0.2.7) less-rails (2.5.0) actionpack (>= 3.1) less (~> 2.5.0) libv8 (3.16.14.3) macaddr (1.6.1) systemu (~> 2.5.0) mail (2.5.4) mime-types (~> 1.16) treetop (~> 1.4.8) memcache-client (1.8.5) mime-types (1.25.1) mini_magick (3.7.0) subexec (~> 0.2.1) mono_logger (1.1.0) multi_json (1.8.2) multi_xml (0.5.5) multipart-post (1.2.0) mysql2 (0.3.14) net-scp (1.1.2) net-ssh (>= 2.6.5) net-ssh (2.8.0) nokogiri (1.5.9) oauth (0.4.7) oauth2 (0.9.2) faraday (~> 0.8) httpauth (~> 0.2) jwt (~> 0.1.4) multi_json (~> 1.0) multi_xml (~> 0.5) rack (~> 1.2) options (2.3.0) fattr orm_adapter (0.5.0) paperclip (3.5.2) activemodel (>= 3.0.0) activesupport (>= 3.0.0) cocaine (~> 0.5.3) mime-types polyglot (0.3.3) pr_geohash (1.0.0) progress_bar (1.0.0) highline (~> 1.6.1) options (~> 2.3.0) prototype-rails (3.2.1) rails (~> 3.2) rack (1.4.5) rack-accept (0.4.5) rack (>= 0.4) rack-cache (1.2) rack (>= 0.4) rack-mount (0.8.3) rack (>= 1.0.0) rack-protection (1.5.3) rack rack-ssl (1.3.3) rack rack-test (0.6.2) rack (>= 1.0) rails (3.2.14) actionmailer (= 3.2.14) actionpack (= 3.2.14) activerecord (= 3.2.14) activeresource (= 3.2.14) activesupport (= 3.2.14) bundler (~> 1.0) railties (= 3.2.14) rails-dev-tweaks (0.6.1) actionpack (~> 3.1) railties (~> 3.1) rails_autolink (1.1.5) rails (> 3.1) railties (3.2.14) actionpack (= 3.2.14) activesupport (= 3.2.14) rack-ssl (~> 1.3.2) rake (>= 0.8.7) rdoc (~> 3.4) thor (>= 0.14.6,  1.4) redis (3.0.6) redis-namespace (1.4.1) redis (~> 3.0.4) ref (1.0.5) resque (1.25.2) mono_logger (~> 1.0) multi_json (~> 1.0) redis-namespace (~> 1.3) sinatra (>= 0.9.2) vegas (~> 0.1.2) resque-web (0.0.6) coffee-rails jquery-rails resque sass-rails twitter-bootstrap-rails roo (1.13.2) nokogiri rubyzip spreadsheet (> 0.6.4) rsolr (1.0.9) builder (>= 2.1.2) ruby-hmac (0.4.0) ruby-ole (1.2.11.7) ruby-saml (0.7.2) canonix (= 0.1.1) nokogiri uuid (~> 2.3) rubyzip (1.1.0) safe_yaml (0.9.7) sass (3.2.13) sass-rails (3.2.6) railties (~> 3.2.0) sass (>= 3.1.10) tilt (~> 1.3) sentimental (1.0.3) sidekiq (2.17.2) celluloid (>= 0.15.2) connection_pool (>= 1.0.0) json redis (>= 3.0.6) redis-namespace (>= 1.3.1) signet (0.4.5) addressable (>= 2.2.3) faraday (~> 0.8.1) jwt (>= 0.1.5) multi_json (>= 1.0.0) simple_oauth (0.2.0) sinatra (1.4.5) rack (~> 1.4) rack-protection (~> 1.4) tilt (~> 1.3, >= 1.3.4) spreadsheet (0.9.6) ruby-ole (>= 1.0) sprockets (2.2.2) hike (~> 1.2) multi_json (~> 1.0) rack (~> 1.0) tilt (~> 1.1, != 1.3.0) subexec (0.2.3) sunspot (2.1.0) pr_geohash (~> 1.0) rsolr (~> 1.0.7) sunspot-queue (0.10.2) sunspot_rails (>= 1.3.0) sunspot_rails (2.1.0) nokogiri rails (>= 3) sunspot (= 2.1.0) sunspot_solr (2.1.0) systemu (2.5.2) therubyracer (0.12.1) libv8 (~> 3.16.14.0) ref thin (1.6.1) daemons (>= 1.0.9) eventmachine (>= 1.0.0) rack (>= 1.0.0) thor (0.18.1) thread_safe (0.1.3) atomic tilt (1.4.1) timers (1.1.0) treetop (1.4.15) polyglot polyglot (>= 0.3.1) turbo-sprockets-rails3 (0.3.11) railties (> 3.2.8, = 2.2.0) twitter-bootstrap-rails (2.2.8) actionpack (>= 3.1) execjs rails (>= 3.1) railties (>= 3.1) tzinfo (0.3.38) uglifier (2.4.0) execjs (>= 0.3.0) json (>= 1.8.0) uniform_notifier (1.4.0) uuid (2.3.7) macaddr (~> 1.0) uuidtools (2.1.4) vegas (0.1.11) rack (>= 1.0.0) virtus (1.0.4) axiom-types (~> 0.1) coercible (~> 1.0) descendants_tracker (~> 0.0, >= 0.0.3) equalizer (~> 0.0, >= 0.0.9) warden (1.2.3) rack (>= 1.0) webmock (1.16.1) addressable (>= 2.2.7) crack (>= 0.3.2) whenever (0.9.0) activesupport (>= 2.3.4) chronic (>= 0.6.3) wicked_pdf (0.11.0) rails will_paginate (3.0.7) will_paginate-bootstrap (1.0.1) will_paginate (>= 3.0.3) wkhtmltopdf-binary (0.9.9.3) youtube_it (2.3.2) builder excon faraday (~> 0.8) json (~> 1.8.0) nokogiri (~> 1.5.2) oauth (~> 0.4.4) oauth2 (~> 0.6) simple_oauth (>= 0.1.5) webmock PLATFORMS ruby DEPENDENCIES active_scaffold acts-as-taggable-on acts_as_slugable! acts_as_versioned! asset_sync aws-sdk babosa better_errors binding_of_caller bullet calendar_date_select! carrierwave chartkick ckeditor coderay coffee-rails delayed_job_active_record delayed_job_web devise devise-encryptable dynamic_form event-calendar exception_notification font-awesome-rails foreman god google-api-client grape jquery-rails less-rails memcache-client mini_magick mysql2 (>= 0.3) nokogiri (= 1.5.9) paperclip progress_bar prototype-rails prototype_legacy_helper (= 0.0.0)! rails (= 3.2.14) rails-dev-tweaks (~> 0.6.1) rails_autolink respond_to_parent! resque resque-web roo ruby-saml sass-rails sentimental sidekiq sunspot-queue sunspot_rails sunspot_solr therubyracer thin turbo-sprockets-rails3 uglifier whenever wicked_pdf will_paginate (~> 3.0) will_paginate-bootstrap wkhtmltopdf-binary youtube_it 

database.yml的:

 # MySQL. Versions 4.1 and 5.0 are recommended. # # Install the MySQL driver: # gem install mysql2 # # And be sure to use new-style password hashing: # http://dev.mysql.com/doc/refman/5.0/en/old-client.html development: adapter: mysql2 encoding: utf8 reconnect: false database: db_development pool: 5 username: root password: xyz socket: /var/run/mysqld/mysqld.sock 

在Ubuntu中设置Rails的步骤:

 Installation of rvm and ruby in 12.04(Followed the link) https://www.digitalocean.com/community/articles/how-to-install-ruby-on-rails-on-ubuntu-12-04-lts-precise-pangolin-with-rvm the steps are: sudo apt-get update sudo apt-get install curl \curl -L https://get.rvm.io | bash -s stable source ~/.rvm/scripts/rvm rvm requirements(error will occur - not to worry. Go to the link provided to install the package-----) rvm autolibs rvm_pkg again give -> rvm requirements rvm install 1.9.3 rvm use 1.9.3 get the code and do inside it bundle install later check with rails s.. if not working. do as follows gem uninstall -i /home/user_xyz/.rvm/gems/ruby-1.9.3-p448@global bundler then install gem install bundler -v1.0.22 install git sudo apt-get install git then bundle install --system then again do bundle install If the bundle install --system is not working gem install bundler --pre again give bundle install --system It will ask to install the mysql2 install the mysql2 sudo apt-get install mysql2 -v0.3.13 again give bundle install --system then install the following for the mysql error sudo apt-get install libmysql-ruby libmysqlclient-dev After the mysql error. nokogiri error occurs sudo apt-get install libxslt-dev libxml2-dev sudo gem install nokogiri finally give bundle install --system install netbeans first install java package sudo apt-get install openjdk-7-jdk sh netbeans-7.0.1-ml-linux.sh Proceed as follows(Due to erros do the following) gem uninstall bundler bundle install rvm @global do gem uninstall bundler gem update bundle bundle install --system Error for event machine(Check the link: http://stackoverflow.com/questions/4735303/failed-to-install-gem-install-eventmachine-i-need-starling-in-my-project-fo) sudo apt-get install build-essential install event machine gem install eventmachine -v '1.0.3' bundle install --system install mysql sudo apt-get install mysql-server change the password in the config/database.yml for the mysql 

解决方案: 设置Rails的步骤如下:

  • 使用brew: mysql Ver 14.14 Distrib 5.7.9, for osx10.11 (x86_64) using EditLine wrapper安装MySQL。 按照mysql安装后在屏幕上给出的命令。

  • 使用以下步骤安装rvm:

    \curl -L https://get.rvm.io | bash -s stable —ruby

    rvm install 1.9.3

    rvm use 1.9.3

    rvm --default 1.9.3

  • 安装rails, gem install rails ,当前版本为‘4.2.5’

(mysql2 gem version(0.3.20)与rails 4.1.4一起工作)

(mysql2 gem version(0.4.2)与rails 4.2.5一起工作)

(mysql2 gem version(0.3.20)woking with rails 3.2.14)

所以,现在我能够创建和运行新的rails应用程序,但是如果我运行在Ubuntu上构建的任何旧的rails应用程序,即使bundle安装成功完成,它仍然会抛出错误。 我收到的错误消息:

 Gem::LoadError: Specified 'mysql2' for database adapter, but the gem is not loaded. Add `gem 'mysql2'` to your Gemfile (and ensure its version is at the minimum required by ActiveRecord). 

错误消息不断变化但所有都与mysql2 gem有关。 我从旧项目中删除了供应商/缓存Gemfile.lock但仍未成功。

这个问题确实响了,但是我没有挖出互联网和我的内存,而是尝试了以下内容:安装0.3系列的最新mysql2 (写入时为0.3.20),并将其捆绑为应用程序。

问题似乎是最新的mysql2 gem版本0.4与Rails 3不兼容。


您的gem版本无法更改,并且您希望与生产版本具有相同的版本。 为此,您可以从生产服务器复制Gemfile.lock文件,将其放在Gemfile旁边的本地文件夹中,然后执行bundle install命令。

请注意,如果您的Gemfile指定:

 gem 'mysql2', '> 0.3' 

然后Bundler将安装匹配0.n的最新版本,其中n >= 3 。 在撰写本文时,这导致Bundler获得0.4版本,这与您的Rails版本不兼容(Bundler无法从您的Gemfile推断出)。 您的解决方法是修改您的Gemfile副本(并将其提交到您的项目可能是一个好主意):

 gem 'mysql2', '> 0.3.13' # put here the actual version used in production 

这样,Bundler将安装版本匹配0.3.n ,其中n >= 13

第一个问题是你没有在你的系统上安装mysql2 gem(似乎你已经解决了这个问题,所以你不必担心它)。

我不知道Mac的具体细节,但在Windows中,这意味着您在安装gem之前已下载相应的库并将其安装到您的系统上。

关于错误:

Gem :: LoadError:指定数据库适配器的’mysql2’,但未加载gem。 将gem’mysql2’添加到您的Gemfile中(并确保其版本达到ActiveRecord所需的最低要求)。

…这个问题是由Rails 4.2.0 - 4.2.4调用错误版本的mysql2 : Rails 4 – Gem :: LoadError:为数据库适配器指定’mysql2’但是没有加载gem

解决方案是更改任何已损坏的应用程序的Gemfile ,将它们更新到最新版本的Rails,最好使用github上的4-2-stable分支:

 #Gemfile gem 'rails', '~> 4.2.5', git: "git://github.com/rails/rails.git", branch: '4-2-stable' 

在此处输入图像描述