SQLPackage 部署失败

SQLPackage Deployment Failure

提问人:CyberShrimp 提问时间:10/31/2023 最后编辑:CyberShrimp 更新时间:10/31/2023 访问量:33

问:

我正在使用 Azure DevsOps 发布管道,其中包含“部署 DacPac”步骤。它失败了,没有有用的错误。我什至从哪里开始尝试调试这样的东西?

2023-10-31T11:52:53.2467107Z ##[debug]Initializing deployment (Start) 
2023-10-31T11:52:53.2478476Z ##[debug]Initializing deployment (Complete) 
2023-10-31T11:52:53.2491000Z ##[debug]Analyzing deployment plan (Start) 
2023-10-31T11:52:53.2503313Z ##[debug]Analyzing deployment plan (Complete) 
2023-10-31T11:52:53.2515949Z ##[debug]Updating database (Start) 
2023-10-31T11:52:53.2527690Z ##[debug]An error occurred while the batch was being executed. 
2023-10-31T11:52:53.2540412Z ##[debug]Updating database (Failed) 
2023-10-31T11:52:53.2707612Z ##[debug]Time elapsed 0:00:28.40 
azure-devops azure-sql-database sql-server-data-tools dacpac sqlpackage

评论

0赞 Pratik Lad 10/31/2023
很难猜测导致此通用错误的确切问题?请添加更多信息
0赞 Ivan Starostin 11/3/2023
一切都在一秒钟内完成,我想没有真正的尝试部署任何东西。也许有些路径是错误的。我不使用 Azure,但其他人使用,显示您的管道配置,这将至少为我们提供一些详细信息。

答:

0赞 Alberto Morillo 10/31/2023 #1

作为解决此问题的方法,请尝试以下步骤:

  1. 检查部署任务的日志,了解有关错误的详细信息。为此,可以在管道中启用调试模式,将变量 system.debug 设置为 true,然后再次运行管道。这将显示有关任务执行的更多详细信息。
  2. 根据错误消息,似乎已成功连接到数据库,但请确保使用 SQL Server Management Studio 或 PowerShell 测试凭据以连接到数据库。同时在 Azure SQL 防火墙上启用“允许访问 Azure 服务”。
  3. 尝试使用 SqlPackage.exe 中的 /p:AllowIncompatiblePlatform 选项,以防 dacpac 与 Azure SQL 存在一些不兼容问题。
  4. 查看任务中的部署选项、参数和设置。

评论

0赞 CyberShrimp 10/31/2023
1.我已经在调试更多了。2.数据库连接正常。3.没用。4.是DropObjectsNotInSource导致了错误。
0赞 Alberto Morillo 10/31/2023
也许添加这个 /p:DoNotDropObjectTypes=Permissions;用户(例如)和 DropObjectsNotInSource 可以提供帮助