2017-08-27 138 views
0

我做了一個nodejs應用程序,現在我想將它部署到Google Cloud,但是我無法成功連接到Postgresql。我的部署應用程序和Postgres的實例運行在同一個項目中,我使用這個連接字符串:無法連接到Postgres實例

pg://postgres:[password]@/[db_name]?host=/cloudsql/[Instance_name_of_Postgres] 

,但每次我試圖提出請求時,Knex總是返回此消息:

Knex:超時獲取連接。游泳池可能已滿。你錯過了一個.transacting(trx)調用嗎?

在我的開發機器中,我允許IP地址和連接到Postgres實例使用該連接字符串與服務器IP有任何問題。

回答

0

您的連接字符串不正確,它不是@/[db_name]?host,它是@host/db_name

驅動程序支持的完整的語法是:

postgres://username:[email protected]:port/database?ssl=false&application_name=name 
&fallback_application_name=name&client_encoding=encoding 
+0

我的配置是正確的,我也跟着上gcloud網站上的教程雖然。我發現問題是我沒有啓用SQL服務。還是謝謝你的答案 –