2016-05-13 114 views
0

我有一個Heroku的應用程序,並在3級不同的服務器(包括本地主機)3個不同的數據庫Heroku的訪問遠程PostgreSQL

我試圖連接到他們每個人,我總是得到

PG::ConnectionBad: could not connect to server: Connection timed out 

我DATABASE_URL是正確和應用程序與heroku的本地數據庫運行順利

起初我認爲這是從我的主機防火牆,但我創建了本地數據庫,打開了5432和5433端口,仍然heroku無法連接...我submited一張票,但沒有迴應如此河

有人可以幫助我嗎?

的database.yml

development: 
port: 5432 
host: host 
adapter: postgresql 
encoding: unicode 
database: database 
pool: 5 
username: user 
password: pass 

test: 
port: 5432 
host: host 
adapter: postgresql 
encoding: unicode 
database: database 
pool: 5 
username: user 
password: pass 

production: 
port: 5432 
host: host 
adapter: postgresql 
encoding: unicode 
database: database 
pool: 5 
username: user 
password: pass 
+0

請問您可以發佈您的config/database.yml嗎? (請先刪除那裏的任何憑據) – mwallba

+0

編輯的問題,但我認爲heroku甚至不關心database.yml,因爲他只通過設置中的DATABASE_URL連接...即使我有一個錯誤的database.yml,但連接到通過DATABASE_URL本地heroku db它工作正常 – Boltz0r

+0

在Rails中,'DATABASE_URL' env var覆蓋'config/database.yml'中的任何設置。您是否嘗試從heroku儀表板設置它? – max

回答

0

也許您的端口是關閉的。要在Ubuntu機器上打開它,請使用以下命令。

sudo ufw allow 5432 
sudo /etc/init.d/postgresql restart