在SSIS数据流组件中使用SQL Server Native Client 10时出现通信链接错误。
错误:SSIS错误代码DTS_E_OLEDBERROR。 OLE DB错误 发生了。错误代码:0x80004005。 OLE DB记录可用。 来源:“Microsoft SQL Server Native Client 10.0”Hresult:0x80004005 说明:“通信链接失败”。一个OLE DB记录是 可用。来源:“Microsoft SQL Server Native Client 10.0” Hresult:0x80004005描述:“TCP Provider:指定的网络 名称不再可用。
所以我从SQL Server Native Client 10更改为Microsoft OLEDB Provider for SQL Server,希望它能正常运行。这次出现了错误,如下所示:
[Transacn_Tbl1 [737]]错误:SSIS错误代码DTS_E_OLEDBERROR。一个OLE 发生了DB错误。错误代码:0x80004005。 OLE DB记录是 可用。来源:“用于SQL Server的Microsoft OLE DB提供程序” Hresult:0x80004005描述:“SQL上发生了未指定的错误 服务器。连接可能已被服务器终止。“。
[Transacn_Tbl1 [737]]错误:SSIS错误代码 DTS_E_INDUCEDTRANSFORMFAILUREONERROR。 “输入”OLE DB目标 输入“(750)”失败,因为错误代码0xC020907B发生,并且 “输入”上的错误行处置OLE DB目标输入“(750)” 指定错误失败。指定对象发生错误 指定组件的。之前可能会发布错误消息 这有关于失败的更多信息。
这两个提供商有什么区别?我应该使用哪一个?
答案 0 :(得分:1)
在向生产环境发布新的SSIS
项目之后,我遇到了这个问题。
起初,我能够成功验证程序包,但是当我尝试执行程序包时,我收到了DTS_E_OLEDBERROR. Error code: 0x80004005.
消息。
我尝试通过将服务器名和密码变量设置为“敏感”来验证软件包,但是在这种情况下,验证也失败了。
将环境变量重新设置为不敏感并插入环境变量值后,我能够验证并执行该程序包。
在我看来,SSISDB
中的元数据似乎已损坏,但是很遗憾,我无法指出此问题的根源。
我希望这会对某人有所帮助。在结束这个(相当不令人满意的)解决方案之前,我已经经历了很多调试方案。
答案 1 :(得分:0)
看起来您必须解决此问题,您必须更改SQL Server代理服务启动帐户的Temp目录的权限。将读取权限和写入权限授予此目录的SQL Server代理代理帐户。