当前位置: 首页 > 知识库问答 >
问题:

Postgres群集:用户"postgres"密码验证失败

锺星腾
2023-03-14

在我的Postgres服务器中,使用命令pg_createcluster监听端口5433创建了一个集群。要设置用户postgres的密码,我遵循以下步骤:

  1. 编辑文件nano/etc/postgresql/9.3//pg_hba.conf

改变线路

托管所有127.0.0.1/32 md5

按行

托管所有127.0.0.1/32信任

sudo-u postgres psql-h localhost-p 5433

= # \ 密码

输入新密码:

请重新输入:

postgres=#\q

换线

托管所有127.0.0.1/32信任

排队

托管所有127.0.0.1/32 md5

没有显示错误,但连接控制台和pgadmin3会触发一个错误:用户"postgres"的密码验证失败。默认情况下,在实例中使用相同的进程(main),我可以成功连接。

我感谢任何帮助,因为我没有找到太多的文档来处理Postgres实例。提前谢谢。

共有2个答案

欧阳山
2023-03-14

首先,您需要重新加载配置,以便可以应用所有更改。连接端口可能未打开,而且您还没有清楚地共享本地连接的配置。这应该很好:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5

督飞鸣
2023-03-14

谢谢你的回复。我在pg_hba.conf中看到了您的响应配置

# TYPE  DATABASE        USER            ADDRESS                 METHOD
# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5

修改密码:

# nano /etc/postgresql/9.3/<instance_name>/pg_hba.conf
# /etc/init.d/postgresql restart
# su - postgres
$ psql -U postgres -p 5433 -h localhost
Password for user postgres:

身份验证服务器提示我输入psql。下面的配置是,它允许我在没有密码的情况下输入psql:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust

修改密码:

# nano /etc/postgresql/9.3/<instance_name>/pg_hba.conf
# /etc/init.d/postgresql restart
# su - postgres
$ psql -U postgres -p 5433 -h localhost
postgres=# \password postgres
Enter new password:
Enter it again:
postgres=# \q
$ exit
# nano /etc/postgresql/9.3/<instance_name>/pg_hba.conf
# /etc/init.d/postgresql restart

更改设置并再次进入psql:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5


# su - postgres
$ psql -U postgres -p 5433 -h localhost
Password for user postgres:
psql: FATAL:  password authentication failed for user "postgres"
FATAL:  password authentication failed for user "postgres"
 类似资料:
  • 我试图登录与postgres用户从我的Windows机器到我的服务器与Pgadmin。 但它一直给我这个错误: 然后我试图用psql从命令行登录,这给了我同样的错误。然后,我重置密码使用psql测试,把本地条目pg_hba.conf信任。然后我把条目放回md5,并试图用密码“测试”登录。 在psql中,我使用了以下命令: 这个特殊的psql命令 每次,我都将pg_hba.conf本地条目返回到md

  • 我使用数字海洋从hello示例创建了一个phenix项目。我从etc/motd输入了用户名和密码。尾部文件。我一直收到下面的错误消息。我是一个初学者,由于某些原因,我无法正确安装eco。 **(混合)无法为Hello.Repo创建数据库,原因如下:psql: FATAL:用户"elixir"密码验证失败FATAL:用户"elixir"密码验证失败 您可以使用以下Postgress数据库凭据:* U

  • 我已经看了类似的问题,并尝试了一些方法,如编辑pg_hba文件以信任,并执行ALTER USER postgres PASSWORD'newPassword';但都不起作用。我确实重启postgres后做了这样的改变。 上下文是我为一家公司提供了一个web应用程序,我正试图通过命令bundle exec rake db:。。。 如果有帮助的话,我最初会遇到错误“PG::ConnectionBad:

  • 我最近安装了Postgresql 11,在安装过程中,没有为Postgres输入密码和用户名的步骤。现在在PGADMIN4中,我想将数据库连接到服务器,它要求我输入密码,而我一开始就没有输入任何密码。任何人都知道发生了什么。谢谢!

  • 我获取密码身份验证失败。我试过使用peer、trust、Identit等方法。确保重新启动或重新加载conf。 用户postgres的密码:psql:致命:用户“postgres”的密码验证失败 我的pg\U hba。形态:

  • 根据我在pg_hba.conf中读到的内容,我推断,为了确保我被提示输入postgres用户的密码,我应该将pg_hba.conf的前两个条目方法从当前的“对等”编辑为“密码”或“md5”,但如果这是错误的,我不想破坏东西。我的方向是正确的吗?还是遗漏了一些明显的东西? 无论如何,更多细节- 在debian上安装了postgres 9.4之后,我通过这样做更改了postg雷斯用户的密码- …并输入