我编辑了pg_hba.conf
文件:
sudo su postgres
nano /etc/postgresql/10/main/pg_hba.conf
并添加了这行:
local all username scram-sha-256
在那个文件中,我把所有的md5
都改成了scram-sha-256
作为postgres
用户,我创建了一个拥有超级用户权限的新用户:
sudo su postgres
psql
CREATE USER username WITH SUPERUSER PASSWORD 'password';
然后我重新启动了Postgres:
/etc/init.d/postgresql restart
我曾尝试使用pgAdmin4登录,更改了数据库连接属性下的用户名。但是psql -U username testdb < ./testdb.sql
和这种方式都不起作用,因为我收到以下消息:
致命错误:用户“username”的密码验证失败
那么如何在我的Debian9/KDE机器上使用scram-sha-256使Postgres工作?当我将所有的md5
保留在pg_hba.conf
中时,它之前是可以工作的。
DETAIL: 用户“foouser”没有有效的SCRAM验证器。
的确,让PostgreSQL配置为实际以正确的格式存储这些哈希值是有意义的。 - David Tonhofermd5
升级到scram-sha-256
的简单逐步教程。 - Mateech