2017-02-17 33 views
0

我有一個Rails 5應用程序,我已經上傳到Heroku。我有最低的PostgreSQL計劃(hobby-dev 10,000行)。我按照此link上的導入說明進行操作。如何在我的Rails 5應用程序和我的Heroku帳戶中訪問Heroku中已上傳的數據庫?

當我嘗試運行我的應用程序時,出現relation "xxxx" does not exist錯誤,出現500 Internal Server Error。當我檢查我的應用程序的數據部分沒有我的數據庫出現。我再次嘗試從多個AWS S3數據庫轉儲中執行以下命令。每次我在數據頁面上執行刷新命令時,它看起來像計數正在增加,但是當一切都完成時,我的數據庫都沒有出現。我的終端或數據部分沒有出現錯誤,所以我認爲數據庫不在那裏。

heroku pg:backups:restore 'https://s3.amazonaws.com/me/items/3H0q/mydb.dump' DATABASE_URL 

我收到一封電子郵件,說我有約80%的分配行用於我的計劃,所以他們在某個地方。我已經完成heroku restart但仍無法訪問它們。我不知道在哪裏可以找到/訪問數據庫或從哪裏下載。

heroku run rails c輸出:

[xxxxxxxxxx (master)]$ heroku run rails c 
Running rails c on ⬢ xxxxxxxx... up, run.4346 (Free) 
Loading production environment (Rails 5.0.1) 
irb(main):001:0> 
+0

當你運行'heroku run rails c'時會發生什麼? – user2954587

+0

嘗試加載你的模型....'User.first'。你可以嗎? – user2954587

+0

我剛剛用輸出更新了我的問題。它到達我的Rails應用程序,但它所做的第一件事是檢查模型User上的數據庫登錄。這就是應用程序與「關係」用戶「不存在」崩潰的地方。我在我的本地機器上運行它沒有問題。只是當它被上傳到Heroku。我在哪裏可以在Heroku中看到我的數據庫? –

回答

0

DATABASE_URL represents the HEROKU_POSTGRESQL_COLOR_URL of the database you wish to restore to. 你這樣做了嗎? =>You must specify a database configuration variable to restore the database.

+1

當我第一次上傳我的應用時,它爲我做了愛好開發附加組件。我無法找到顏色網址,因此我使用了數據存儲名稱。他們已經加載,但我無法訪問它們。我刪除了該插件,並使用Heroku CLI創建了一個新插件,並獲取了顏色URL名稱並上傳了數據。 –

0

難道你的Heroku migrate your database?這可能是問題。要遷移/種子或使用在Heroku任何rake命令

heroku run rake db:migrate

任何時候,你需要heroku run它。

+0

你的問題讓我回顧我的問題。我錯誤地刪除了我的應用程序中沒有遷移的事實。我在導入後運行了rake db:migrate命令,以防Heroku中的操作有點不同。 –

相關問題