2011-08-23 53 views
0

我試圖在生產模式中放置一個rails 3.0應用程序。我在slicehost.com上託管它。我已經設置了紅寶石1.8.7,更新了我的寶石,安裝了rails 3.0,安裝了mysql,安裝乘客,並加載了一個空欄應用程序。我有我的XML文件連接到數據庫。我甚至在我的apache2配置中添加了RailsEnv生產(儘管我被告知它默認爲生產)。Rails 3.0生產模式錯誤

然後我cd到我的應用程序運行耙分貝:遷移RAILS_ENV =生產,並得到了以下錯誤:

找不到寶石「sqlite3的」

現在,我很困惑,因爲我想在mysql中創建一個生產數據庫,爲什麼它關心sqlite3。

它告訴我做捆綁安裝,但我只能猜測這將設置一個開發數據庫。

此處有任何建議。

我不知道他們在rails 3.0中做了什麼,但這真的很煩人。

我喜歡在2.x中如何在環境文件中添加RAILS_ENV ='production'。

任何方式咆哮。

我很感激一些幫助。

謝謝

布賴恩

更新:

登錄爲:根 根@密碼: 歡迎到Ubuntu 11.04(GNU/Linux的2.6.35.4-rscloud x86_64的)

  • 文檔:https://help.ubuntu.com/ 您有郵件。 上次登陸:8月23日星期二14:15:09 2011 from adsl-99-142-52-152.dsl.emhril.sbcglobal.net root @:〜#dir public_html rvm-installer來源 root @:〜# cd public_html root @:〜/ public_html#cd ticket root @:〜/ public_html/ticket#rake db:migrate RAILS_ENV = production 警告:此版本的mysql2(0.3.7)不附帶捆綁的ActiveRecord適配器因爲它現在是Rails 3.1的一部分 警告:如果您打算在Rails中使用它,請使用0.2.x版本< = 3.0.x rake中止! !!!缺少mysql2寶石。它添加到您的Gemfile:寶石 'mysql2'

任務:TOP =>分貝:遷移 (參見全部跟蹤運行與--trace任務) 根@:〜/的public_html /票務#

回答

0

您可以通過在您的Gemfile中使用組來解決此問題。

只有您的測試和開發團隊和生產運行捆綁添加SQLite作爲

bundle install --without test development 

樣品的Gemfile:

gem "mysql2", "~> 0.2.7 
gem "passenger" 

gem "sqlite3", :group => :development 

來源:http://gembundler.com/groups.html

更新:由於0.3。 0和ActiveRecord 3.1 - ActiveRecord適配器已經從mysql2 gem和ActiveRecord本身中取出。如果您需要使用mysql2與Rails版本< 3.1請確保在您的Gemfile中指定gem「mysql2」,「〜> 0.2.7」

+0

好吧,將您的代碼添加到我的gem文件並運行rake db:migrate rails_env =生產和我得到了一個錯誤消息。你可以在我的文章的更新部分找到該消息。有任何想法嗎? – Brian

+0

對不起,你們提到的軟件包安裝也是如此。 – Brian

+0

你可以試試'RAILS_ENV =生產捆綁包執行耙分貝:遷移' – dexter