将数据库注册为数据层应用程序 - 对 SQLPackage 部署方式的任何更改?

Registering Database as Data-tier Application - any change to how SQLPackage deploys?

我的任务是创建一个自动漂移报告,以密切关注我们某些数据库的健康状况。我有这个工作和发送电子邮件等....没问题。

我只是有点担心将我们所有的实时数据库注册为数据层应用程序。

我们目前使用 SQLPackage.exe 进行部署。我打算添加

<BlockWhenDriftDetected>False</BlockWhenDriftDetected>
<RegisterDataTierApplication>True</RegisterDataTierApplication>

我们使用的每个 publish.xml 个文件。

现在问题来了。

这对 xml 文件中的其他参数有影响吗? MSDN 文档没有提及任何内容。

是否有任何我应该注意的服务器级别变化?

这能完全改变我们的备份过程吗?

到目前为止,我所有的测试都表明没有。我紧张的原因是,如果我要从 Visual Studio 发布,当您勾选 "Register as data-tier application" 框时,您的其他选项将变灰。让我相信它确实有所作为。

欢迎提出意见!

谢谢!

[免责声明]:我在微软工作。

你好 Kirky1

部署选项确实会影响部署,即使当您 select "Register as Data-tier Application" 时 VS 禁用了高级选项。如果您只设置不影响 dacpac 比较的选项,例如 BlockWhenDriftDetected,则没有问题。如果您还设置了会影响比较的选项,例如 "Exclude Users",您可能 运行 会遇到偏差检测会阻止部署的问题。这是由于漂移检测比较使用默认部署选项造成的。

鉴于您使用 BlockWhenDriftDetected = false 的情况,漂移比较中忽略选项的问题应该不会影响您,并且在部署您的 dacpac/project 时,您设置的任何部署选项都将得到尊重。

希望对您有所帮助。

朗尼