创建Hresult的SSIS包:0x80004005描述:"登录超时已过期"错误

Hug*_*ugo 17 database sql-server ssis

我有一个SSIS包,由一个每天运行两次的SQL作业执行.我最近通过删除其中的Select语句的where子句来更新SSIS包.现在结果大约有1800行,相比之前的650行.当我在我的本地机器上执行新包时一切正常.但是,当我把它放在Prod服务器上时,它不会运行并给我Hresult:0x80004005描述:"登录超时已过期"错误.

如果未启用远程访问,则通常会抛出此错误.作业在我的帐户下运行,因此权利不应成为问题.此外,包之前没有问题运行,我只更改了一个where子句,使表大一千行,所以我不应该有一个登录超时错误.

我知道它不是服务器上的剩余空间,因为如果我更改SSIS包的配置文件并将其指向生产数据库,一切正常.

再次,这个问题困扰着我,因为当我把旧的包与旧的where子句放在一起时,一切正常.

任何人都知道可能导致问题的原因是什么?

这是日志条目:

Executed as user: Services. ...sion 9.00.3042.00 for 32-bit Copyright (C) Microsoft Corp 1984-2005. All rights reserved. Started: 1:49:21 PM Error: 2011-08-04 13:50:12.28 Code: 0xC0202009 Source: Brd Load Connection manager "DataBase" Description: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005. An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "Login timeout expired". An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.". An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "TCP Provider: A connection att... Process Exit Code 1. The step failed.

Hug*_*ugo 17

我终于找到了问题.错误不是好的.

显然,Ole DB源有一个错误,可能会导致崩溃并抛出该错误.我用OLE DB命令替换OLE DB目标,其中包含insert语句并修复它.

给我的链接:http: //social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/fab0e3bf-4adf-4f17-b9f6-7b7f9db6523c/

奇怪的虫子,希望它会帮助其他人.


ast*_*bin 5

这里的答案不太清楚,所以我想补充更多细节。

使用上面提供的链接,我执行了以下步骤。

在我的 XML 配置管理器中,我将“Provider”更改为 SQLOLEDB.1 而不是 SQLNCLI.1。这让我克服了这个错误。

此信息可在 OP 在答案中发布的链接中找到。

该链接让我到达那里:http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/fab0e3bf-4adf-4f17-b9f6-7b7f9db6523c/