0

我已经尝试使用 DACPAC Deployer 将数据库部署到位于不同域中的服务器。通过幽灵帐户建立的服务器连接,我之前使用 XCOPY Deployer 成功部署到同一台服务器。

DACPAC 部署已被拒绝,我收到以下错误消息。

安装命令\"C:\Users\rmghost\AppData\Local\Temp\ReleaseManagement\ROMEO.DB Deployer\201408121235204725703-3\sqlpackage.exe /Action:Publish /SourceFile:".dacpac" /TargetServerName:"" /TargetDatabaseName :""\" 失败,退出代码为 \"-2146232576\"。

请分享您的想法以解决此问题。

4

2 回答 2

2

编辑:您还可以查看空的 TargetServerName 和 TargetDatabaseName。这些值应该在您的发布模板中给出。

这是进一步调试的一种方法 - 这将从等式中删除 RM:

  1. 按照此博客将部署程序日志输出的详细程度更改为详细。
  2. 再次执行失败的部署。
  3. 我们需要知道执行的命令是什么以及它是从哪个工作目录执行的。这可以通过查看部署程序日志来检索(在此位置发生部署的目标服务器上可用:%Temp%\Microsoft\ReleaseManagement\12.0\Logs\DeploymentAgent.exe.log)。在此日志中,查看以下两个条目(或类似条目)的部署时间:

    2012-05-12 10:40:12 - Verbose - RM.DeploymentAgent.Services.Deployer.ComponentProcessor.InstallComponent:
    Deployment: **********Installation will be done from this folder: "C:\Users\DeployerUser\AppData\Local\Temp\InRelease\XBAP\20120620073259"
    2012-05-12 10:40:12 - Verbose - RM.DeploymentAgent.Services.Deployer.ComponentProcessor.InstallComponent:
    Deployment: **********Installing component using command "xbapdeploy.exe -pn XbapDemo -d c:\temp\xbapdemo3"
    
  4. 接下来是以运行 Deployer Windows 服务的用户身份打开命令提示符,导航到上面显示的文件夹并执行命令。

这将模仿部署代理的行为,并应为您提供更多信息以帮助找出问题。让我们知道你发现了什么。

于 2014-08-13T21:28:32.450 回答
0

目标数据库服务器中缺少“Microsoft.SqlServer.TransactSql.ScriptDom.dll”,这是部署 DACPAC 的先决条件。所以我安装了“Microsoft SQL Server 2012 Transact-SQL ScriptDom”并触发了 RM 的发布。发布成功。

非常感谢您的支持……!!!

于 2014-08-17T07:47:42.310 回答