【问题标题】:ispac file deployment errors out when build/deploy from visual studio works fine当从 Visual Studio 构建/部署工作正常时,ispac 文件部署错误
【发布时间】:2018-05-07 13:19:44
【问题描述】:

我们有两个包作为一项工作的一部分。我们将这些相同的包从一个 SQL Server 集成服务目录 SSISDB 文件夹复制到同一集成服务目录 SSISDB 文件夹(相同命名空间)中的另一台 SQL Server。在复制了包的新服务器上运行此作业时,该作业运行但失败并且也不会产生错误消息(我们记录了任何错误消息)。

从 Visual Studio 构建和部署这两个相同的包到同一个 SSISDB 文件夹然后运行作业时,作业按预期运行。

当通过 .ispac 文件进行部署时,我们使用 with 时出错的脚本任务

ScriptTaskName: There was an exception while loading ScriptTask from XML: 
System.Exception: The Script Task "ST_0001a..." uses version 15.0 script 
that is not supported in this release of Integration Services. To run the 
package, use the Script Task to create a new VSTA script. In most cases, 
scripts are converted automatically to use a supported version, when you 
open a SQL Server Integration Services package in %SQL_PRODUCT_SHORT_NAME% 
Integration Services. at 
MicrosoftSqlServer.Dts.Tasks.ScriptTaskScriptTaskLoadFromXML(XmlElement 
elemProj, IDTSInfoEvents events)

为什么只有构建和部署方式才能使包按预期工作?

【问题讨论】:

  • 在项目属性中,您是否将Target Server Version 设置为您要部署到的同一版本的 SQL Server?
  • 设置为“SQL Server 2016”,@@VERSION 命令的目标服务器版本是“Microsoft SQL Server 2016 (SP1) (KB3182545) - 13.0.4001.0 (X64) ... "
  • 您使用的是哪个版本的 SSDT/Visual Studio?
  • 大部分时间是从 Visual Studio 2015 版本 14.0.24720.00 更新 1 和 SSDT 14.0.608.142 尝试的。今天尝试使用 Visual Studio 2017 版本 15.6.6 和 SSDT 15.1.61801.210 与从任一设置构建的两个 ispac 文件的结果相同。

标签: sql-server ssis sql-server-data-tools


【解决方案1】:

此类错误有多种可能的原因。
首先 - 您应该将SSDT from MS 的版本更新到最新,设置正确的目标SQL Server 版本 在项目属性中并重建包。当此属性重置为 SQL vNext 时可能会出现这种情况。
statements 表明您的 SSDT 版本包含导致此错误的错误。

第二 - 由于某种原因,当从 SSMS 部署 .ispac 或在 文件资源管理器 中单击它时,SSMS 会隐式地将项目和其中的包升级到自己的版本。 Detailed report 关于这种行为。我怀疑你有 SSMS 2017,它执行脚本任务到版本 15 的隐式升级。
如果您想由支持团队在不使用 SSMS 的情况下部署包,这里是方法。使用 IsDeploymentWizard - Microsoft utility 管理包和项目部署。它具有用于处理部署的 GUI 和命令行参数。
以下是其中一个项目的示例:

isdeploymentwizard /S /SP:"D:\Project\Proj.ispac" /DS:"myserver\instance" /DP:"SSISDB/ProjectFolder"

确保 IsDeploymentWizard 从 SQL bin 目录 %ProgramFiles%\Microsoft SQL Server\130\DTS\Binn 启动,而不是从 SSMS。

【讨论】:

  • 我用包括 VS 本身和 SSDT 在内的所有内容的最新版本更新了 VS 2015 和 2017。在两者中重建解决方案并在每次重建时尝试一次。从 ispac 文件部署时仍然有同样的问题和错误。有什么我可以在服务器端检查的吗?我那里有系统管理员。
  • 嗯。您的问题案例 - 您是否使用 SSMS 部署 ispac?您使用的是什么版本的 SSMS?
  • 只需单击 ispac 文件本身。我们的想法是能够将此文件交给我们的部署团队,因为他们宁愿不通过 Visual Studio 执行此操作。从 Visual Studio 构建/部署运行与 ispac 文件几乎相同的选项,但恰好按预期工作 100%。 SSMS 版本为 v17.3
  • 更新了回复以使用 IsDeploymentWizard 解决您的目标。
猜你喜欢
  • 1970-01-01
  • 2021-06-25
  • 1970-01-01
  • 1970-01-01
  • 2013-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多