我已经安装了PostgreSQL 8.4, Postgres客户端和Pgadmin 3。控制台客户端和Pgadmin用户“postgres”身份验证失败。我已经输入用户作为“postgres”和密码“postgres”,因为它以前工作过。但是现在身份验证失败。我以前做过几次都没有这个问题。我该怎么办?发生了什么?
psql -U postgres -h localhost -W
Password for user postgres:
psql: FATAL: password authentication failed for user "postgres"
FATAL: password authentication failed for user "postgres"
给出的答案几乎是正确的,只是缺少一些指针,我会在我的解决方案中照顾
首先确保你的用户有sudo访问权限,如果没有,你可以使用下面的命令添加你的用户作为sudo用户
sudo adduser <username> sudo
更改将在用户下次登录时生效。
i)现在转到sudo vim /etc/postgresql/<your_postgres_version>/main/pg_hba.conf文件,寻找这样的行:
local all postgres md5 #peer
评论一下。就在这一行下面,必须有一个注释行,说:
local all postgres peer
或者对于旧版本,它将是:-
local all postgres ident
取消这一行的注释。
ii)现在重新启动postgres使用任何这些命令:-
sudo /etc/init.d/postgresql restart
OR
sudo service postgresql restart
iii)现在您可以使用以下命令简单地登录到postgres:
sudo -u postgres psql
Iv)一旦你在你可以创建任何你想要的操作,在我的情况下,我想创建一个新的数据库,你可以使用下面的命令做同样的事情:
CREATE DATABASE airflow_replica;