2015-06-01 33 views
1

我在node.js項目上使用bookshelf.js,它在我的本地主機上正常工作。 但是,當我試圖把它放在AWS + RDS,它給了我下面的錯誤:Knex:錯誤池2 - 錯誤:錯誤分配資源:連接ECONNREFUSED

Express server listening on port 8000 
Knex:Error Pool2 - Error: Error allocating resources: connect ECONNREFUSED 
Knex:Error Pool2 - Error: Error allocating resources: connect ECONNREFUSED 

顯然,我的連接CONFIGS發生了變化。

module.exports = { 
     host  : 'https://my_rds_url:3306', 
     user  : 'root', 
     database  : 'my_database', 
     password : 'my_pw' 
} 

它可能是什麼?

謝謝。

回答

2

在大多數情況下,這是給其他的服務器地址不是「localhost」的問題。 據我所知,您已將代碼從PC移至遠程服務器。訣竅是node.js是服務器端,因此對於節點,這段代碼仍然是本地主機(非遠程)

嘗試將「https://my_rds_url:3306」更改爲「localhost:3306」。

1

您需要驗證您的客戶端是否有權訪問sql服務器。 使用MySQL Workbench \ adminer.php或任何其他客戶端測試遠程連接,將其安裝到您的客戶端並嘗試連接。

如果失敗了,您需要設置您的sql server以允許遠程連接。只要考慮安全問題。

哦,我只注意到你設置的「https」作爲東道主,將其更改爲:

host  : 'my_rds_url:3306',