我正在使用Postgres数据库在Heroku上运行Ruby on Rails应用程序。
我以前可以使用heroku pg:psql
命令从终端连接到数据库
最近,情况发生了变化。运行heroku pg:psql
命令后,出现以下错误。
--> Connecting to postgresql-perpendicular-94363
psql: could not connect to server: Connection refused
Is the server running on host "ec2-23-23-130-158.compute-1.amazonaws.com" (23.23.130.158) and accepting
TCP/IP connections on port 5432?
我试图在线搜索它,但是没有发现有用的东西。
请帮助。谢谢
答案 0 :(得分:1)
我刚刚尝试连接到您的数据库:
psql "dbname=postgresql-perpendicular-94363 host=ec2-23-23-130-158.compute-1.amazonaws.com user=test_user port=5432 sslmode=require"
我有:
psql: FATAL: password authentication failed for user "test_user"
因为,我当然不知道您的凭据:)
但是,似乎连接有效。我想您忘了设置sslmode
。如您在documentation中所见,它是必需的:
所有连接都需要SSL:sslmode = require。
更新:
我检查了没有sslmode
的连接,并且消息不是您的:
FATAL: no pg_hba.conf entry for host "31.42.24.63", user "test_user", database "postgresql-perpendicular-94363", SSL off
所以,我想这是您的互联网连接出现问题。检查防火墙设置。
答案 1 :(得分:-1)
按照帖子中提到的描述,您指定的方式是正确的。 此外,您还可以尝试在指定数据库的情况下使用下面提到的命令。
heroku pg:psql DATABASE_URL
注意:仅当链接了多个数据库时才使用。