2012-08-28 27 views
0

我的RB文件很簡單,這樣的:錯誤,當我做出過續集的連接 - mysql2上AmazonWs

require 'rubygems' 
require 'mysql2' 
require 'sequel' 

Sequel.connect(:adapter => 'mysql2', :database=>'xxx', :user => 'xxx', :password => 'xxxxxx', :host => 'xxxxxxxx.compute-1.amazonaws.com') 

,當我跑這個文件我得到了以下錯誤:

> /usr/lib64/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in 
    `require': cannot load such file -- mysql2 (LoadError) from 
> /usr/lib64/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in 
    `require'  from t.rb:2:in `<main>' 

我跑命令「捆綁列表」在我的亞馬遜實例上,我得到了以下列表:

捆綁包中包含的寶石: * actionmailer(3.2.8) * actionpack(3。 2.8) * activemodel的(3.2.8) * ActiveRecord的(3.2.8) *的ActiveResource(3.2.8) *的ActiveSupport(3.2.8) * AREL(3.0.2) *助洗劑(3.0.0) *捆綁(1.0.21) *咖啡導軌(3.2.2) *咖啡腳本(2.2.0) *咖啡腳本源(1.3.3) * erubis(2.7.0) * execjs(1.4.0) *加息(1.2.1) *國際化(0.6.0) *旅程(1.0.4) * jQuery的導軌(2.1.1) * JSON(1.7.5) * mail(2.4.4) * mime-types(1.19)* rack-cache(1.2) * rack-ssl(1.3.2)* rack(1.4.1) * *架測試(0.6.1) *導軌(3.2.8) * railties(3.2.8) *耙(0.9.2.2) *的RDoc(3.12) * SASS(3.2.1) * SASS-導軌(3.2.5) *續集(3.38.0) *鏈輪(2.1.3) *托爾(0.16.0) *傾斜(1.3.3) *樹梢(1.4.10) * tzinfo(0.3.33)

所以我們可以看到有mysql2寶石。有任何建議嗎?

謝謝大家!

+0

正如你從backtrace中看到的那樣,在你甚至需要Sequel之前,第二行的require'mysql2'語句會引發錯誤,所以問題不在Sequel中。我的猜測是在你的環境中。 「捆綁列表」可能會顯示mysql2,但是您是否在使用「bundle exec」運行代碼? 「gem list mysql2」顯示什麼? –

+0

是的,我之前用bundle exec執行過,我沒有成功,我甚至試過ruby file.rb –

回答

0

好的!解決這個問題。在我的本地環境中,我手工編輯Gemfile(可能不是正確的方法),我添加了一行「gem mysql2」,然後在控制檯中執行「bundle install」並將Gemfile上傳到github。

最後,在amazon實例中,我部署了我的環境以應用更改並執行命令「RAILS_ENV =生產包exec file.rb」(始終使用生產)並且文件執行正常。

謝謝大家!

相關問題