我希望能够使用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.
答案 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。