我試圖部署基於PostgreSQL的在Heroku我的瓶的應用程序,但我當我嘗試用db.create_all()
創建表我不斷收到此錯誤:Heroku的拒絕連接到Postgres數據庫
(psycopg2.OperationalError) could not connect t
rver: Connection refused
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
這裏是如何我的代碼如下所示:
app=Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI']='postgres://kfgriimpfjecsv:Bk1*****[email protected]:5432/dd71doth8gopgh'
db=SQLAlchemy(app)
if __name__ == '__main__':
app.debug=True
app.run()
我使用Heroku Toolbelt與Heroku服務器進行通信。此外,當我試試這個:
psql -p 5432 -h localhost
我得到幾乎相同的錯誤:
psql: could not connect to server: Connection refused
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
我也試過ec2-23-21-215-184.compute-1.amazonaws.com
代替localhost
的URI,但得到了同樣的錯誤。
而且here是完整的回溯,我得到當我運行db.create_all():
任何想法,爲什麼連接被拒絕,如何解決這個問題?
如果從CLI得到它爲好,那麼很明顯,無論是皮克沒有運行,它沒有監聽tcp,也沒有監聽ip:port組合。 –
如果是linux,你應該檢查服務。它看起來並不像這兩個錯誤是相同的,僅僅因爲psql不能提供psycopg錯誤,來自cli的詳細錯誤日誌將會更有幫助。 其他的選擇是檢查服務的狀態,防火牆和端口本身。 正確的數據庫權限。 – manugupt1
我通過添加回溯來編輯問題,但不知道如何檢查服務。我將不得不挖掘一下如何做到這一點。 – multigoodverse