ruby-on-rails - rails 4 : How do you run a Postgres database downloaded from Heroku on my local machine?

标签 ruby-on-rails postgresql heroku development-environment

我从 Heroku 下载了一个 pg 备份(它以 TextEdit 文档的形式出现),我想从我的开发环境中运行它来测试一些东西。如何转换/保存它以便我可以更改我的 database.yml 文件来访问它?

最佳答案

认识 heroku pg:pull

没有用户名/密码的拉取

您可以通过运行以下命令在本地拉取 Heroku PostgreSQL 数据库:

heroku pg:pull $HEROKU_DATABASE $LOCAL_DATABASE [--app $APP]

其中 $HEROKU_DATABASE 是 Heroku 数据库的名称,$LOCAL_DATABASE 是您本地数据库的名称(它将由 pg:pull 创建;如果它已经存在,命令将失败,以保护您免受意外覆盖),$APP 是您的应用程序名称。

使用用户名/密码拉取

如果您需要为本地 PostgreSQL 连接提供用户名/密码,那么您可以像这样通过 PGUSERPGPASSWORD 传递它:

PGUSER=$YOUR_USER PGPASSWORD=$YOUR_PASSWORD heroku pg:pull $HEROKU_DATABASE $LOCAL_DATABASE [--app $APP]

为什么不备份?

捕获单独的备份只是为了获取最近的生产数据可能不是最好的主意,因为 Heroku 会轮换备份,因此您会丢失一个较旧的备份。这是否是一个问题取决于您的情况。

关于ruby-on-rails - rails 4 : How do you run a Postgres database downloaded from Heroku on my local machine?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37228348/

相关文章:

ruby-on-rails - 强制 git 忽略一个目录以及其中所有当前和 future 的文件

ruby-on-rails - 在 RubyOnRails 应用程序中生成图形

ruby-on-rails - 仅当当前值为空时才设置 date_field 的默认值

postgresql - 使用 PostGIS 将不同行中的两个线串组合起来

javascript - 访问存储在 GitHub LFS 中的静态 .obj 文件

shell - 为什么我的 emacs 不显示 shell 的输出?

javascript - rails 4 : How do I do an AJAX call on nested forms?

ruby-on-rails - 使用 unicorn 将 Rails 应用程序部署到 Opsworks 时出错

postgresql - Postgres 区分大小写 : Implications of Lower()

c# - 使用 Asp.Net MVC 处理临时 session 数据