我正在为新的 Web 应用程序开发部署系统,我想知道管理数据库迁移过程中的最佳点在哪里(如何进行迁移的问题完全是另一个问题)。
似乎有两种方法可以去:
- 使用可以从命令行手动运行或作为自动部署/构建过程的一部分的迁移脚本
- 在应用程序启动时运行迁移(我使用的是 ASP.NET,所以这可以很容易地完成,而不会导致长时间运行的用户请求)
有没有人对这些方法有任何建议/见解/经验?还有其他建议吗?
我明白为什么#1 可能更有吸引力——它让我可以完全控制数据库的更新时间。但是,我非常喜欢 #2,因为它允许我在部署之间快速迭代并减少手动过程。#2 也可以在我的开发机器上使用,以允许更快的迭代。嗯,开始认为拥有两者可能是一件好事......