【发布时间】:2018-11-27 20:28:08
【问题描述】:
我们最近将生产 SQL Server 2016 Enterprise 实例从 SP1 更新到了 SP2。我们目前使用的是 13.0.5026 版本。在升级之前,具有 SSISDB 连接权限和对 Integration Services 目录文件夹具有适当权限的用户可以成功部署 ISPAC 文件。
升级后,同样的用户仍然可以部署到SSISDB,但是当你执行.DTSX时,里面的脚本任务验证失败。如果我部署与系统管理员完全相同的 ISPAC,则没有问题。我看到的常用解决方案是确认 SSDT 配置属性设置为 SQL Server 2016。我们在构建 ISPAC 之前验证了此设置是否正确。
几年前从 SQL Server 2014 迁移到 2016 时,我看到了类似的问题,但当时的解决方案是为运行包的代理帐户授予对 C:\Windows\Temp 文件夹的修改权限,以便它可以生成临时文件。这个新问题很难确定,我不想为了让其他人可以执行简单的部署步骤而给出系统管理员。
感谢任何想法或建议。
************更新/编辑************:
服务器有一个位于 SQL Server/130/DTS/Binn 下的 SQL Server 2016 部署工具 - ISDeploymentWizard.exe。此部署工具有效。在 140/DTS/Binn 位置下还有另一个相同的向导,名称相同但大 1 KB(假设这是因为 SSMS 现在是单独安装,我在服务器上安装了最新和最好的)。这个部署失败。我正在用头撞墙,为什么一个有效而另一个无效。在本地,我们都使用 SSMS 2017,然后我们得到 140/DTS/Binn ISDeployment 文件,而不是 130(因为那是 SQL Server 2016,我们使用的是 SSMS 2017,我认为它是向后兼容的)。不管怎样,这个问题才刚刚开始出现,我们已经使用同一个版本的 SSMS 几个月了。
【问题讨论】:
-
您可以随时比较转换后的
.dtsx文件,看看是否有确凿证据。比较这些并不有趣,但是我对脚本任务从公认的旧版本转换为 2017 年的脚本任务感到悲痛不已,向导们只是忽略了这样做——我最终不得不手动编辑包来制作脚本任务项目定义与在全新包中创建的“vanilla”脚本任务相匹配。如果您的软件包仍在使用旧版本,并且您依靠即时升级来挽救局面,他们可能不会这样做。 -
嗨 raveseer,我遇到了同样的错误,但在我的情况下需要在 SQL Server 2014 中部署项目。我可以使用 130/DTS/Binn 位置下的向导还是必须使用其他?
-
您好 Sql 程序员,130 文件夹下的向导适用于 SQL Server 2016。如果您尝试使用它,您可能会遇到与使用 140 版本相同的问题,因为您使用的是比您的 SQL Server 版本新的部署实用程序。我建议您找到合适的 120 兼容版本来进行部署。同样,我不确定它是否适合您,您需要进行测试。谢谢。
标签: sql-server sql-server-2016