Heroku部署PostgreSQL后本地访问及SSH服务器信息获取问询
Heroku PostgreSQL本地访问与SSH相关问题解答
本地能否访问部署好的数据库?
你现在拿到的postgresql://hayat:randompassword@localhost:5432/~是本地测试用的连接格式,并非Heroku远程数据库的真实地址,直接用它肯定连不上。要本地访问Heroku上的PostgreSQL,得用正确的远程连接信息:
- 打开终端,先登录Heroku账号:
heroku login - 切换到你的应用所在目录,运行
heroku config:get DATABASE_URL,这会返回真实的远程数据库连接字符串,格式大概是postgresql://<用户名>:<密码>@<Heroku数据库主机>:5432/<数据库名> - 把这个字符串复制到本地PostgreSQL客户端(比如psql、pgAdmin)里,就能直接连接远程数据库了。
更省事的方法是直接用Heroku CLI的端口转发:执行heroku pg:psql,CLI会自动建立本地到远程数据库的连接,不用手动输入连接字符串。
怎么获取SSH服务器访问信息?
Heroku的PostgreSQL实例不提供直接的SSH服务器登录权限——你没办法直接SSH到运行数据库的服务器上。如果需要类似隧道的访问方式,用Heroku CLI的端口转发命令就行:
运行heroku pg:forward <本地端口号>,比如heroku pg:forward 5433,这样本地的5433端口就会转发到Heroku的数据库端口,之后你可以用postgresql://<用户名>:<密码>@localhost:5433/<数据库名>来连接,效果和SSH隧道类似。
内容的提问来源于stack exchange,提问作者Hyejung
相关产品推荐
相关产品推荐

