2011-11-02 141 views
1

我在将SSIS包部署到目标机器时遇到了一个问题。SSIS部署:连接问题

我已经通过间接XML配置完成了部署。我使用一个父包来调用加载数据仓库中的所有其他子包。子包通过父包变量获取数据库连接。因此,孤立的子包不可执行。

在此设置中,流程在我的开发机器中完美工作。但是当我尝试将它部署到另一个包时,一些包运行并填充这些表,而其他具有相同配置的包则失败。我在所有的子包中都将“Delay Validation”属性设置为true。

Follwing是我为了得到错误:

错误17验证错误。将数据提取并填充到DimRetailer:DimRetailer:SSIS错误代码DTS_E_OLEDBERROR。发生了OLE DB错误。错误代码:0x80004005。 OLE DB记录可用。源:“用于ODBC驱动程序的Microsoft OLE DB提供程序”Hresult:0x80004005描述:“[Microsoft] [ODBC Driver Manager]未找到数据源名称并且没有指定默认驱动程序”。 DimRetailer.dtsx 0 0

错误18验证错误。将数据提取并填充到DimRetailer:将数据提取并填充到DimRetailer:SSIS错误代码DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。 AcquireConnection方法调用连接管理器“Con_XONTRDDATAMART_OLEDB”失败,错误代码为0xC0202009。在此之前可能会发布错误消息,并提供更多关于为什么AcquireConnection方法调用失败的信息。 DimRetailer.dtsx 0 0

错误19验证错误。 DimRetailer连接管理器“Con_XONTRDDATAMART_OLEDB”:SSIS错误代码DTS_E_OLEDBERROR。发生了OLE DB错误。错误代码:0x80004005。 OLE DB记录可用。源:“用于ODBC驱动程序的Microsoft OLE DB提供程序”Hresult:0x80004005描述:“[Microsoft] [ODBC Driver Manager]未找到数据源名称并且没有指定默认驱动程序”。 DimRetailer.dtsx 0 0

错误20验证错误。将数据提取并填充到DimRetailer过期旧SCD2行[617]:SSIS错误代码DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。 AcquireConnection方法调用连接管理器“Con_XONTRDDATAMART_OLEDB”失败,错误代码为0xC0202009。在此之前可能会发布错误消息,并提供更多关于为什么AcquireConnection方法调用失败的信息。 DimRetailer.dtsx 0 0

我无法意识到的是,为什么一些软件包运行正常,而其他软件包共享相同的连接失败。

此外,最终部署将位于具有64位操作系统的服务器上,是否有任何步骤可以让我部署顺利运行?

非常感谢您的任何贡献,提前。

+1

所有来自其他软件包中使用的失败软件包的连接是否也是? –

+0

嗨@FilipPopović,感谢您的评论。很抱歉,我答复晚了。是的,它是所有软件包之间共享的相同连接。我注意到的一些其他有趣的功能是当一个包由于其他错误而停止时,序列容器中的一些包停止提供上述错误。 –

+1

您使用ExecutoOutOfProcess = true吗?试试假。你的目标机器是64位的吗?如果是这样,请安装32位和64位ODBC驱动程序,或确保每个软件包都以32位或64位模式运行。 –

回答

1

我有一个类似于你的设置。但是,我分享给子包的是连接字符串。如果您仍面临同样的问题,可能值得一试