Psql无法连接到服务器,用户postgres的密码身份验证失败

时间:2020-03-15 11:11:16

标签: postgresql

我知道这个问题已经被问过很多,但其他答案都没有帮助。我试过更改pg_hba.conf。我尝试用sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"更改postgres的密码。但是要做到这一点,我需要用户postgres的密码。我尝试使用sudo passwd postgres更改postgres的密码。它仍然无法通过身份验证。在尝试输入密码时,我尝试使用自己的密码,但是验证失败。

我正在使用PostgreSQL 12.2

pg_hba.conf

sudo -u postgres psql

1 个答案:

答案 0 :(得分:0)

我通过在postgres使用的端口(端口:5432)上查找实时进程来解决此错误。一旦这些进程被杀死,postgres便会工作。

所以..

  1. lsof -i :5432打印可能正在运行的任何当前进程及其PID
  2. kill -9 <PID>终止进程。
  3. initdb testdb进行测试

注意:为postgres运行GUI会占用这些进程,即使您终止了某个PID上的进程也会重新启动它们。关闭任何朱。

如果这不起作用,建议您检查启动守护程序

  1. sudo launchctl list | fgrep postgres以打印出守护程序
  2. sudo launchctl stop <printed process name>
  3. initdb testdb进行测试