我已经安装了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"

当前回答

在我的例子中,它的密码超过100个字符。将其设置为较小的字符密码有效。

事实上,我想知道有没有什么地方提到过这个。

其他回答

在任何文本编辑器中打开pg_hba.conf(你可以在postgres安装文件夹中找到这个文件); 将所有的方法字段更改为trust(这意味着postgre不需要密码); 在你的控制台运行这个命令: “alter user postgres with password '[my password]';”| psql -U postgres (意思是用参数-U postgres来修改用户[my password]的密码) Et voilà(不要忘记将方法从trust改回最适合你的方法)

我希望有一天这能帮助到别人。

这是由于缓存造成的。

当你运行php artisan config:cache时,它会缓存配置文件。当事情发生变化时,您需要继续运行它来更新缓存文件。但是,如果你不运行这个命令,它就不会缓存。

这对于生产来说是可以的,因为配置不会经常更改。但是在登台或开发期间,您可以通过清除缓存来禁用缓存,而不运行缓存命令

因此,只需运行php artisan config:clear,之前不要运行该命令以避免缓存。

查看原文

运行laravel迁移时密码验证失败错误

首先是密码箱

ALTER USER postgres with encrypted password 'postgres';

然后重启服务:

sudo systemctl restart postgresql.service

End.

我也遇到过类似的问题。 而访问任何数据库,我得到以下提示后更新密码 " PGAdmin中postgres用户密码认证失败"


解决方案:

关闭postgres服务器 重新运行pgadmin Pgadmin会要求输入密码。 请输入上述用户当前密码

希望它能解决你的问题

如果我没记错的话,默认情况下,用户postgres在Ubuntu上没有设置数据库密码。也就是说,您只能使用postgres操作系统用户帐户登录该帐户。

假设,你有根访问的盒子,你可以做:

sudo -u postgres psql

如果失败,提示数据库“postgres”不存在,那么你很可能不在Ubuntu或Debian服务器上:-)在这种情况下,只需在命令中添加template1:

sudo -u postgres psql template1

如果这些命令中的任何一个失败,出现错误psql: FATAL: password authentication failed for user "postgres",那么检查/etc/postgresql/8.4/main/pg_hba.conf文件:必须有这样的一行作为第一个非注释行:

local   all         postgres                          ident

对于较新版本的PostgreSQL, ident实际上可能是peer。这也没关系。

在psql shell中,你可以给数据库用户postgres设置一个密码:

ALTER USER postgres PASSWORD 'newPassword';

您可以通过键入CtrlD或使用\q命令离开psql shell。

现在,您应该能够为pgAdmin提供一个有效的数据库超级用户密码,它也会很高兴。: -)