【发布时间】:2016-01-27 07:02:12
【问题描述】:
简而言之就是这个问题:
我有一个 SQL Server 2008 R2 SP2 实例。它在我招聘之前部署了 SSIS 包,所以我不知道它们是什么时候创建的或者在什么平台上创建的。
我在 Visual Studio 2013 SSDT 中编写了一些 SSIS 包,它们无法部署到 2008 R2 SP2 实例 - VS 给我一个错误,说它不兼容。
因此,我们想升级现有实例,但遇到了问题。首先,我们能够使用 SSMS 向导(在 2008 R2 实例上)升级 SSIS 包。但是,在这样做之后,SQL Server 2014 升级顾问声明这些包尚未升级。这似乎是不言自明的,因为 2008 SSMS 实例如何将 SSIS 包升级到自身之外?
无论如何,我无法使用 SSMS 2014 连接到 SQL Server 2008 R2 SP2 集成服务 - 它显示“拒绝访问”。有一些 Microsoft 文档详细说明了修改 MsDTSSrvr.ini.xml 文件以允许连接,但它不起作用。
因此,归根结底,SQL Server 2014 升级顾问指出现有包存在两个问题:它们的连接字符串错误 - 以及它们的变量丢失。我的计划是导出所有包,用 SSDT 升级它们,然后从 2008 实例中删除它们 - 将实例升级到 2014,然后部署升级包。但是,MSDB 中有 8 个 SSIS 包无法删除:
PerfCountersCollect, PerfCoutnersUpload,
QueryActivityCollect, QueryActivityUpload,
SqlTraceCollect, SqlTraceUpload,
TSqlQueryCollect, TSqlQueryUpload
它说删除它们违反了 MSDB 数据库中的 FK 约束。
请帮忙 - 我只想导出包,升级实例,升级包,最后将它们部署到升级的实例,但没有任何效果。提前致谢,如果这个帖子的论坛发错了,我深表歉意,但我不知道该把它放在哪里。
【问题讨论】:
-
我会仔细查看删除软件包会违反的 FK。我从未听说过依赖包的 FK。由于您想丢弃包裹,因此可能可以丢弃 FK。
标签: sql-server ssis sql-server-2008-r2 sql-server-2014