【问题标题】:Cannot connect to aws rds Postgresql using master password and username but pgAdmin works无法使用主密码和用户名连接到 aws rds Postgresql,但 pgAdmin 可以工作
【发布时间】:2021-11-02 16:51:22
【问题描述】:

我无法使用主密码和用户名连接到 AWS rds Postgresql,但 pgAdmin 与证书的连接工作正常。

我的网站在尝试连接到数据库时说:

net::ERR_CONNECTION_TIMED_OUT

我 ssh 进入我的 Elastic Beanstalk 的 ec2 实例,当我尝试连接到 rds 时,它给了我以下错误:

psql: error: FATAL:  PAM authentication failed for user "user"
FATAL:  pg_hba.conf rejects connection for host "111.11.1.11", user "user", database "database", SSL off

我用来连接的命令是这样的:

psql --host=rds_endpoint --port=5432 --username=user --password --dbname=database

我改了主密码,还是不行。

同样,如果我将 pgAdming 与 ssl 证书及其生成的令牌一起使用,则连接成功并且我可以完全访问数据库。

还有,命令

nc -zv rds_endpoint 5432

给出成功的结果:

Ncat: Connected to 111.11.11.11:5432.

主用户名是,密码不包含任何特殊字符。

Master username: user

【问题讨论】:

标签: sql postgresql amazon-web-services amazon-rds


【解决方案1】:

当密码包含特殊字符时,我遇到了这个问题。我需要在 psql 中使用的连接 URL 中转义它们

百分比编码可用于在任何 URI 部分中包含具有特殊含义的符号,例如,将 = 替换为 %3D。

https://www.postgresql.org/docs/11/libpq-connect.html#id-1.7.3.8.3.6

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-24
    • 2017-12-20
    • 2018-11-27
    • 1970-01-01
    • 2021-08-01
    • 1970-01-01
    • 2015-12-20
    • 2019-05-14
    相关资源
    最近更新 更多