PostgreSQL:密码验证失败,但密码正确

问题描述 投票:0回答:1

我正在使用pg模块在Node.js中编写一个简单的“连接数据库”程序。

直到昨天,一切正常,但现在由于某种原因出现此错误:

错误:用户“ ezert”的密码身份验证失败

我不知道发生了什么,因为我知道脚本中使用的密码是正确的。

完整代码:

const { Client } = require('pg'); // quando definido entre parêntesis, declara-se que se trata de um contrutor

let connectionURL = 'postgresql://ezert:<MY PASSWORD>@localhost:5432/mydb';

const client = new Client({
    connectionURL: connectionURL
});

client.connect();

client.query("SELECT * FROM my_table", function (err, result) {

    if (err) {

        console.log('[ERROR]:\n' + err);
        return;

    }

    console.log('[RESULT]:');
    console.log(result.rows);
    return;

});
node.js postgresql
1个回答
0
投票

这是PostgreSQL的问题,不是Node.js的问题。

解决:

  1. 编辑以下文件:/etc/postgresql/YOUR_PG_VERSION/main/pg_hba.conf
  2. 将所有身份验证方法更改为信任。
  3. 更改postgres用户的Unix密码。
  4. 重新启动服务器。
  5. 使用psql -h localhost -U postgres登录,使用在(3)中选择的密码。
  6. 现在,如果需要,您可以将pg_hba.conf文件重置为默认值。
© www.soinside.com 2019 - 2024. All rights reserved.