看來用於顯示數據的數據庫與我在rails控制檯中可以使用的數據庫不同。在rails中切換數據庫階段
我試圖運行rails dbconsole
,我也得到:
Couldn't find database client: sqlite3. Check your $PATH and try again.
我的測試和開發數據庫適配器是SQLITE3和我的生產適配器是MYSQL。
我需要我的導軌控制檯連接到我的生產數據庫。
看來用於顯示數據的數據庫與我在rails控制檯中可以使用的數據庫不同。在rails中切換數據庫階段
我試圖運行rails dbconsole
,我也得到:
Couldn't find database client: sqlite3. Check your $PATH and try again.
我的測試和開發數據庫適配器是SQLITE3和我的生產適配器是MYSQL。
我需要我的導軌控制檯連接到我的生產數據庫。
如果你想連接到你的生產數據庫,則需要執行console
或dbconsole
命令之前的RAILS_ENV
環境變量設置爲production
。
的「Rails的控制檯」和dbconsole
命令參考不同的東西:
如果您想直接連接到數據庫,執行SQL語句,使用
$ RAILS_ENV=production ./script/rails dbconsole
如果你試圖加載「Rails控制檯」,即可訪問Rails環境的交互式Ruby外殼,運行
$ RAILS_ENV=production ./script/rails console
請嘗試以下命令。
RAILS_ENV=production rails c
「舞臺」是錯誤的單詞;你正在尋找切換「環境」。你的環境可能不應該使用不同的數據庫引擎,你應該在'config/database.yml'中修復它。目前尚不清楚您的開發中是否安裝了實用的SQlite3數據庫,或者是否有填充的生產中的功能性MySQL數據庫。你能澄清嗎? – meagar 2012-03-09 02:45:29
感謝您向我澄清。 這兩個數據庫都被填充。我猜測,我在rails控制檯中連接的數據庫是開發,這是我能想到的唯一解釋。我可以通過下面給出的答案連接到生產。 – marimaf 2012-03-09 03:17:53