0

我在本地主機上有一個節點服務器。在它是pg模塊:如何讓節點pg模塊與我的Windows postgresql服務器通信?

//above is express requires 
var pg = require('pg'); 

var client = new pg.Client(); 

client.connect((err)=>{ 
    if(err) throw err; 

    client.end((err)=>{ 
     if(err) throw err; 
    }); 
}) 
//below is basic express server stuff 

我有,我相信,一個PostgreSQL服務器上運行的Windows。我有pgadmin打開,有一個localhost:5432節,裏面是我創建的「測試」數據庫。

我的節點服務器當前拋出:

error: password authentication fails for user 'myname' 

我不明白我怎麼可以,無論是在PostgreSQL的Windows客戶端,設置默認的用戶名/密碼,然後將其添加到環境變量,或者,在Windows中添加正確的環境變量鍵/值對,節點pg模塊期望它可以登錄,或者告訴節點pg模塊如何登錄到postgresql,或者我是否甚至沿着正確的路徑走下去。

如何讓我的節點pg模塊連接到我的localhost postgresql服務器?

編輯:我試圖按照this SO answer中的說明操作,但無論我在哪裏指出數據庫創建的位置,我是否在admin或no中使用cmd或powershell,都會收到「訪問被拒絕」錯誤,無論我爲文件設置的權限。我現在主要通過pgadmin III GUI與postgresql進行交互。

EDIT2:我試過做修改PG初始化:

var connectstring = 'postgres://me:[email protected]/dbname'; 
var client = new pg.Client(connectstring); 

我收到了同樣的錯誤,使用完全相同的登錄信息,我與提示通過的pgAdmin III。

編輯3:根據these docs,我應該有環境變量的列表?如果沒有,我可以在哪裏找到這些信息,以便我可以手動設置這些環境變量?這是正確的道路嗎?

回答

1

用途:

var pg = require('pg'); 

var config = { 
    user: 'foo', 
    database: 'my_db', 
    password: 'secret', 
    port: 5432 
}; 

var pool = new pg.Pool(config); 
相關問題