我们有很多数据库迁移文件 - 我们应该保留它们吗?

时间:2012-02-17 01:26:02

标签: ruby-on-rails database-migration

我们有大约100个数据库迁移文件。他们中的许多人进行了不可逆转的架构更改。稍后还有一些迁移可以更改或删除在早期迁移中创建的表。

我们正在直接从schema.rb文件创建新数据库,所以我们想知道是否有任何理由保留完整的迁移集?

我们将创建一个基于现有schema.rb。

的新迁移

2 个答案:

答案 0 :(得分:7)

是的,您提出的建议被视为最佳做法。

我已经使用旧版应用程序多次完成此操作。您希望将迁移备份到某个地方,直到您对一切都很满意为止,当然,这是应用程序维护的一个重要部分 - 如果您有大量旧迁移,则可能需要永远执行{{1或者让新的开发环境运行。

答案 1 :(得分:4)

我独家使用rake db:setuprake db:reset(从不rake db:migrate)在生产服务器或新开发机器上安装新数据库。这些命令已使用schema.rbstructure.sql来重新创建数据库。

也就是说,复制schema.rb非常容易,将其用作新的起点并删除所有旧的迁移。

我更愿意将我的迁移用于历史目的,但这是一个品味问题。