我应该相信自动生成的数据库比较脚本吗?



我需要实现升级数据库

我有在代码库代码与redgate的工作,知道如何生成比较数据和模式

这工作得很好,但我的经理告诉我,他认为最好在办公室生成delta脚本,并保存数据库内部的数据库版本,当更新发生在字段中,将语句从版本a切换到b运行特定的脚本

他说这是一种更明确的方法,因为他不知道脚本在运行时会生成什么,我们有一个医疗程序,所以我们不能用错误的数据更新数据库

你熟悉他的方法吗?你能推荐一下吗?

我是Red Gate公司SQL Compare的产品经理。SQL Compare将在绝大多数情况下生成可靠的脚本。但是,在没有以下条件之前,绝不应该将更改应用到生产环境:1)将最近的备份恢复为Staging环境,并将脚本应用为测试2)在运行脚本之前备份Production .

将版本保存在生产目标中是一个合理的想法,因为它允许您在应用在其他地方生成的脚本之前对其进行查询。但是,并不能保证目标服务器就是它所声称的那样。这被称为"漂移",在不更新版本号的情况下,可以对数据库进行临时更改。

Red Gate已经开发了自己的版本控制机制,用源代码控制中保存的数据库版本标记目标数据库。你可以在这里阅读更多关于它是如何工作的:http://www.red-gate.com/supportcenter/content/SQL_Source_Control/help/3.0/SSC_Working_With_Migrations

我们正在努力改进和持续改进数据库的部署方式,所以如果您有任何反馈,请告诉我们。

最新更新