SSIS与DB创建了太多连接

时间:2015-04-08 10:59:47

标签: sql-server ssis sybase

对于数据加载,我在MSSQL 2012上使用SSIS包(VS2010)。它将数据从Sybase ASE(ODBC)加载到MSSQL 2012(OLEDB)。一切正常,它使用少量的Sybase连接。

然后我在MSSQL 2014上将我的软件包迁移到SSIS(VS2013),现在我的情况很奇怪。

当我在VS2013中打开我的软件包时,它会从devenv.exe为每个数据流步骤创建一个与Sybase的连接。接下来,我运行我的包,它为DtsDebugHost.exe中的每个数据流步骤创建了一个连接,并且在运行期间,它从DtsDebugHost.exe创建了更多连接,并且几乎所有连接都处于“AWAITING COMMAND”状态。我有与Sybase的250个连接的许可证限制,我的包破坏了这个限制。

为什么2014年SSIS会发生这种奇怪的行为?我该如何处理?

1 个答案:

答案 0 :(得分:1)

为什么版本之间存在差异,我没有答案。

如果我冒昧猜测,SSIS正在尝试快速验证整个软件包,并打开多个连接并为每个连接分配验证工作。因此,并行验证与串行验证。

但解决方法是将ASE连接管理器上的RetainSameConnection属性设置为True。这将使SSIS不会打开多个连接,而是强制一切使用一个连接。