使用SSH(Putty)连接到Heroku Postgres

时间:2013-05-27 17:19:49

标签: postgresql heroku ssh putty

我希望能够使用Putty从我的桌面连接到我的Heroku postgres(crane)数据库。

我最近从Webfaction转移到了Heroku。在webfaction上,这是一个非常简单的过程(通过他们的文档:http://docs.webfaction.com/user-guide/databases.html#starting-an-ssh-tunnel-with-putty)。

Heroku允许您使用heroku pg:credentials获取数据库信息和凭据。如下所示:https://devcenter.heroku.com/articles/heroku-postgresql#external-connections-ingress。我似乎无法弄清楚如何通过Putty使用此信息连接到数据库。

如果我尝试使用Heroku信息进行设置,Putty会出现此错误:Disconnected: No supported authentication methods available.

3 个答案:

答案 0 :(得分:4)

Heroku侦听与数据库的SSL连接,但不提供使用Putty所需的shell帐户。 他们在their doc中说:

  

当您发现自己想要SSH访问时,请尝试使用工具   正确地解释了Heroku的分布式环境,例如   heroku命令行工具和一次性dynos。

事实上,这与Webfaction形成鲜明对比,{{3}}明确指出它们提供shell访问:

  

使用您喜欢的所有工具对快速服务器进行全shell访问   为您预先安装和维护。

不同的公司,不同的服务......

答案 1 :(得分:2)

按字面意思使用以下命令:heroku pg:psql DATABASE

这将匹配配置字符串DATABASE_URL并使用psql将您连接到数据库。

注意:您可能需要将psql添加到路径

在Mac OS上,使用PostGres App:

export PATH=/Applications/Postgres.app/Contents/MacOS/bin:$PATH

答案 2 :(得分:1)

Heroku允许直接连接到数据库,您不必使用putty或其他ssh客户端来隧道连接到数据库服务器。

使用您的Heroku postgres凭据从命令行直接连接psql。