无法连接到ec2上的postgres

时间:2016-01-14 05:23:10

标签: postgresql amazon-web-services amazon-ec2

我刚刚在EC2 AMI实例上安装了PostgreSQL 9.2服务器。但是我无法从命令提示符连接到它。

此外,我在/var/lib中看到两个目录:pgsql9pgsql92。 pgsql92中的数据目录为空,因此看起来像pgsql9正在被使用。

[root@ip-172-31-56-103 etc]# psql
Password:
psql: FATAL:  password authentication failed for user "root"
[root@ip-172-31-56-103 etc]# sudo su - postgres
-bash-4.2$ psql
Password:
psql: FATAL:  password authentication failed for user "postgres"
-bash-4.2$ psql -U postgres
Password for user postgres:
psql: FATAL:  password authentication failed for user "postgres"
-bash-4.2$

的pg_hba.conf

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host     all            all             127.0.0.1/32            md5
host     all            all             0.0.0.0/0               md5
# IPv6 local connections:
host    all             all             ::1/128                 ident
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local   replication     postgres                                peer
#host    replication     postgres        127.0.0.1/32            ident
#host    replication     postgres        ::1/128                 ident

postgresql.conf中

listen_addresses = '*'  

1 个答案:

答案 0 :(得分:1)

确定您正在使用的PG安装:ps -ef | grep pgsql。您将确定使用哪个二进制文件,数据目录和conf文件来为您提供一些安慰。

您是否更改了默认的pg_hba.conf?如果是这样,你重装了吗?像sudo service postgresql reload这样的东西应该这样做,具体取决于你的操作系统。

您可能还希望更改IPv6本地连接以使用md5

尝试在-h localhost命令中添加-h 127.0.0.1psql:例如: psql -h localhost -U postgres

检查您的postgres密码双重 / 三次确定。

否则,请查看操作系统安装的特定文档。有时aptyum repos会为您执行一些额外的安全配置。

最后,最糟糕的情况是,将所有pg_hba.conf auth方法更改为trust,然后重新启动数据库,登录,更改postgres密码,注销,将auth方法更改为{{ 1}},重新加载并尝试再次登录。