我可以仅从Heroku数据库备份中还原记录吗?

我在Rails Heroku托管的项目中的迁移文件变得非常混乱,因此我想对其进行合并。我想我可以:

  1. 使用heroku pg:backups:capture --app appname

  2. 进行Heroku数据库备份
  3. 添加一个新的迁移文件,删除所有表并在开发和生产环境中运行它,

  4. 删除我的所有迁移文件,并在旧的schema.rb中添加包含所有信息的新的,更整洁的迁移文件,并在开发和生产中运行它们,然后

  5. 使用heroku pg:backups:restore b001 DATABASE_URL --app appname恢复我的Heroku数据库。

这正是我所做的。我假设数据库还原将仅使用备份数据库中的记录填充当前数据库。但是,实际发生的是用旧数据库替换了整个当前数据库。这是一个问题,因为我现有的迁移文件现在都被视为新建文件,并且由于要创建的表已经存在而无法运行。这意味着我无法添加任何新迁移,因为现有迁移无法运行。我可以删除所有现有的迁移文件,但这似乎是非常糟糕的做法。

这种情况是否可以解决?理想情况下,我只需要运行迁移,并用备份数据库中的 records 填充数据库-可以吗?

lin_504 回答:我可以仅从Heroku数据库备份中还原记录吗?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3047937.html

大家都在问