将数据库迁移到SSDT数据层应用程序的预期方法是什么?

时间:2013-08-03 20:56:32

标签: sql-server version-control tfs sql-server-data-tools dac

我似乎无法在SSDT文档中找到对此主题的简单处理。基本上,我有一个历史上管理的数据库,通过将原始sql文件检查到源代码管理中的文件夹,我们正在尝试采用SSDT。我们有一个生产数据库,一个QA数据库和一个共享开发数据库。

在我们看来,第一步是使用“创建新项目”工作流程,清理我们的旧/陈旧对象以便项目构建,然后使用模式比较通过我们的dev / qa推送更改并最终生产数据库。

在阅读有关DAC框架的其他文档时,似乎应该通过“注册数据层应用程序”工作流程来完成,但目前还不清楚这是否正确,如果是这样,我们如何将其纳入这个过程。

这个过程看起来很简单,现在很多人都应该这样做。我是否只是错过了MSDN文档中的某个页面?任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

我们通常只是将数据库项目发布到目标。您可以选择注册为数据层应用程序,但如果有人在项目未进行更改的情况下进行更改,则会导致问题。

我们的流程: 1.从现有数据库创建项目(一些起点) 2.清理项目 3.建立项目 4.重复步骤2& 3直到一切都干净。 :) 5.构建"发布个人资料"对于我们想要定位的每个环境。 6.发布数据库 - 通过生成脚本或仅更新数据库。

我的博客上有一系列文章概述了我们使用的过程,可能很有用。您可以在此处找到它们:http://schottsql.blogspot.com/search/label/SSDT

您绝对可以使用Schema Compare路由,但是您将错过部署前和部署脚本以处理数据更改的强大功能。

答案 1 :(得分:0)

你发布问题后,你有没有进步?

构建数据库项目时输出的Dacpac包与您在SSMS的Deploy Data-tier Application功能中使用的相同(右键单击Object Explorer中的Databases)。

在Red Gate,我们正考虑将Dacpacs的原生支持纳入Deployment Manager。我鼓励你这么做(它也有免费版)。如果您认为可以改进现有SSMS部署工作流程中的任何内容,请告诉我们,我们会看看是否可以帮助解决这些问题!