gpt4 book ai didi

postgresql - 更改 postgres super 用户的身份验证方法

转载 作者:行者123 更新时间:2023-12-05 02:01:45 30 4
gpt4 key购买 nike

我正在使用 psql 连接到 Debian 10 上的 PostgreSQL 数据库。我正在尝试以 postgres 用户身份连接到默认的 postgres 数据库。默认情况下,这是使用不需要密码的“对等”身份验证方法。

如果我使用“对等”身份验证登录并使用以下命令设置密码:

ALTER USER postgres WITH PASSWORD 'myPassword';

查询成功执行,但是当我编辑 pg_hba.conf 以更改身份验证方法时:

local    all            postgres                    peer

到:

local    all            postgres                    scram-sha-256

然后重新启动服务器,出现以下错误:

~$ sudo -u postgres psql postgres
Password for user postgres:
psql: FATAL: password authentication failed for user "postgres"
~$

有人知道怎么做吗?

最佳答案

更改 PostgreSQL 中的身份验证方法:

  1. 打开终端窗口

  2. 进入postgres bin目录

示例:cd /usr/local/pgsql/bin

注意:根据您的安装环境,bin 目录的路径可能会有所不同。

  1. 输入 su – postgres然后按 Enter。这会将登录更改为 postgres用户。

  2. 从 bin 目录类型 ./psql

  3. 类型: ALTER USER your_username password 'new_password';然后按 Enter。 ALTER ROLE应该显示。

  4. 输入 \q然后按回车

  5. 打开 /path_to_data_directory/pg_hba.conf

示例:/etc/postgresql/11/main/pg_hba.conf

  1. 修改配置文件底部的行以类似于这些示例之一。

注意:您可能只需要更改 trust 这个词至 md5 .一行或多行应该已经存在。

host     all        postgres                                   peer 
host all your_username your.ip your.subnet md5
  1. 保存修改

  2. 使用 systemctl restart postgresql.service 重新启动 PostgreSQL 服务

关于postgresql - 更改 postgres super 用户的身份验证方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66351630/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com