这个DACPAC用于测试部署,但是我们无法将它用于生产部署,因为所有的生产数据库都不同步。我打算在Visual中运行模式比较,依次将每个数据库与DACPAC进行比较,并写下所有差异,但差异比我预期的要大得多,而且要将它们全部记录下来需要花费很长时间。是否有任何方法为每个数据库生成报告,详细说明与DACPAC相比,该数据库中所有数据库对象之间的差异?
发布于 2021-02-18 23:08:25
SqlPackage.exe是Visual比较使用的部署引擎,它还有其他选项:
SqlPackage.exe是一个命令行实用程序,它自动执行以下数据库开发任务: Version:返回SqlPackage应用程序的版本号。在18.6版中添加。 摘要:创建一个数据层应用程序(.dacpac)文件,其中包含连接的SQL数据库中的架构或架构和用户数据。 发布:增量地更新数据库架构,以匹配源.dacpac文件的架构。如果服务器上不存在数据库,则发布操作将创建该数据库。否则,更新现有数据库。 导出:将连接的SQL数据库(包括数据库模式和用户数据)导出到BACPAC文件(.bacpac)。 导入:将模式和表数据从BACPAC文件导入到新的用户数据库中。 DeployReport:创建发布操作将进行的更改的XML报告。 DriftReport:创建一个DriftReport,报告自上次注册以来对注册数据库所做的更改。 Script:创建Transact-SQL增量更新脚本,该脚本更新目标的架构以匹配源的架构。 SqlPackage.exe命令行允许您指定这些操作以及特定于操作的参数。
发布于 2021-02-19 04:02:15
有一个新的Powershell模块: DACPACComparator https://www.powershellgallery.com/packages/DacpacComparator/2.0,它比较了2 DACPAC,并提供了不同之处。你可以利用这个。
https://stackoverflow.com/questions/66268733
复制相似问题