ruby-on-rails - 更快地将数据库从一个 heroku 应用程序传输到另一个应用程序

标签 ruby-on-rails ruby heroku

有没有更快的方法将我的生产数据库转移到测试应用程序?

目前我正在对我的本地计算机执行 heroku db:pull 然后 heroku db:push --app testapp 但这变得很耗时。我有一些种子数据,但它远不如用我的真实数据进行简单测试那么准确。由于它们都存储在相邻的 AWS 云中,因此必须有更快的方法来移动数据吗?

我考虑过使用 heroku 包,但我注意到 animate 命令不见了?

bundles:animate <bundle>     # animate a bundle into a new app 

最佳答案

在 Rails 应用程序的暂存、测试和生产环境之间迁移数据库是很常见的。而且 heroku db:pull/push 慢得令人痛苦。到目前为止我发现的最好方法是使用 Heroku PG Backups add-onit's free .我按照以下步骤进行迁移 生产数据库到登台服务器:

1) 为生产应用数据库创建备份

heroku pg:backups capture --app production-app

这将从主数据库(通常是 database.yml 中的生产数据库)生成 b001 备份文件

2) 查看所有备份(可选)

heroku pg:backups --app production-app

3) 现在使用 pg:backups restore 命令从生产服务器上的最后一个备份文件填充登台服务器数据库

heroku pg:backups restore $(heroku pg:backups public-url --app production-app) DATABASE_URL --app staging-app

请记住,还原是一种破坏性操作,它会先删除现有数据,然后再用备份文件的内容替换它。

关于ruby-on-rails - 更快地将数据库从一个 heroku 应用程序传输到另一个应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3850299/

相关文章:

ruby-on-rails - 无法将 ruby​​ 重新安装到最新版本

ruby-on-rails - Git 在 Rails 项目上忽略了我的 .gitignore

javascript - jquery 回调和 json 数据

ruby-on-rails - GemNotFoundException 异常

ruby-on-rails - rails 制动器命令 sql 注入(inject)

ruby - 中间人检查页面是否存在

ruby - ruby 的已知版本 - 已知的 rvm 列表

heroku - Delayed::Jobs 在 Heroku 上运行两次?

ruby-on-rails - ruby 的 Timestamp 类是否等同于 PostgreSQL 的时间戳?

git - 致命的 : failed to read object <objectid> Interrupted system call