2017-08-03 94 views
0

我正在運行一個導軌應用程序Digital Ocean。我用dokku來設置它。如何在我的rails 4應用程序Digital Ocean中使用postgres 9.4?

我用這些說明:https://medium.com/@tk512/upgrading-postgresql-from-9-3-to-9-4-on-ubuntu-14-04-lts-2b4ddcd26535將我的postgres從9.3升級到9.4。一切都很好。

然而,當我登錄到我的生產環境中對數字海洋鐵軌控制檯,我通過鍵入

ActiveRecord::Base.connection.execute("select version();").first

檢查了我的Postgres的版本和我的輸出是

{"version"=>"PostgreSQL 9.3.9 on x86_64-unknown-linux-gnu, compiled by gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4, 64-bit"}

它仍在運行postgres 9.3

但是當我跳進d igital海洋控制檯和運行

pg_lsclusters

我得到

9.4 main 5432 online postgres /var/lib/postgresql/9.4/main /var/log/postgresql/postgresql-9.4-main.log

,其中9.4是在線版本。

我不確定我哪裏出了問題,但我是新來的。任何幫助將不勝感激!

回答

0

你在同一臺機器上運行應用服務器和數據庫服務器嗎?請確保host名稱正確設置在您的database.yml

您的9.4似乎在端口5432上運行。你有哪個端口9.3正在運行?

入住database.yml

+0

所以我的主機設置爲本地主機,我添加了一個端口5432到我的database.yml文件的端口號。但是當我推回到數字海洋並進行遷移時,我仍然得到jsonb列類型不存在的錯誤(這就是爲什麼我要使用postgres 9.4)。我如何檢查9.3端口正在運行?以及如何知道應用程序服務器和數據庫服務器是否在同一臺計算機上?謝謝您的幫助 – user402516

相關問題