我有以下内容:
- 亚马逊Linux 2
- Postgres 12 安装并创建用户
我正在使用 ssh 连接到我的实例。
问题是它不允许我连接到我的 postgres 数据库。我使用类似以下命令创建了一个用户:
create user myuser with encrypted password 'strongpassword';
并且 postgres 服务器运行正常,但是当我尝试连接到我的数据库时,它会抛出:
$: psql -h localhost --port 5432 --password -U myuser -d mydb
psql: error: FATAL: Ident authentication failed for user "myuser"
我不知道为什么它不能识别我的用户。
提前致谢
更新
答案1
**您必须将您的用户添加到 pg_hba.conf 并在您的条目中指定网络 cidr。
条目遵循以下格式:
TYPE DATABASE USER ADDRESS METHOD
下面是使用 md5 的本地连接的示例(您必须将环回地址指定为 /32):
local myuser all 127.0.0.1/32 md5
**这是一个允许在同一 A 类网络上进行连接的示例(您可以随时根据访问 postgres 服务器的主机的需求,更适当地扩展或限制 CIDR):**
host all myuser 10.10.0.0/24 md5
然后重新加载 postgres: systemctl reload postgresql
此后,您就能登录了。