SSIS包可以使用“执行包实用程序”运行,但不能在代理程序作业中运行?

时间:2013-05-01 23:20:44

标签: sql-server sql-server-2008 ssis

我导入了一个SSIS包,它将本地Sql服务器表泵送到远程Sql服务器,进入MSDB SSIS存储,我可以通过右键单击并执行来执行该包。但是,当我尝试在代理作业中运行它时,它会引发跟随错误。目标连接使用远程Sql服务器上的Sql登录。

  

以用户身份执行:Domain \ MyLogin。 Microsoft(R)SQL Server执行包实用程序版本10.0.4000.0(适用于64位版权所有(C)Microsoft Corporation 1984-2005。版权所有。开始时间:6:04:09 PM错误:2013-05-01 18:04:09.75代码:0xC0016016来源:描述:无法解密受保护的XML节点“DTS:Password”,错误0x8009000B“密钥无法在指定状态下使用“。您可能无权访问此信息。出现加密错误时会发生此错误。验证是否有正确的密钥。结束错误错误:2013-05-01 18:04:10.31代码:0xC0202009源:Reload_Table连接管理器“DestinationConnectionOLEDB”描述:SSIS错误代码DTS_E_OLEDBERROR。发生OLE DB错误。错误代码:0x80040E4D。 OLE DB记录可用。来源:“Microsoft SQL Server Native Client 10.0”Hresult:0x80040E4D描述:“用户'QA_USERS'登录失败。”。结束错误错误:2013-05-01 18:04:10.31代码:0xC020801C源:数据流任务1目标 - tmp_test [34]描述:SSIS错误代码DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。对连接管理器“DestinationConnectionOLEDB”的AcquireConnection方法调用失败,错误代码为0xC0202009。在此之前可能会发布错误消息,其中包含有关AcquireConnection方法调用失败原因的更多信息。结束错误错误:2013-05-01 18:04:10.31代码:0xC0047017源:数据流任务1 SSIS.Pipeline描述:组件“目标”(34)验证失败并返回错误代码0xC020801C。结束错误错误:2013-05-01 18:04:10.31代码:0xC004700C源:数据流任务1 SSIS.Pipeline描述:一个或多个组件验证失败。结束错误错误:2013-05-01 18:04:10.31代码:0xC0024107源:数据流任务1描述:任务验证期间出错。结束错误DTExec:程序包执行返回DTSER_FAILURE(1)。开始时间:下午6:04:09完成时间:下午6:04:10经过:0.766秒。包执行失败。步骤失败了。

1 个答案:

答案 0 :(得分:1)

之前发生过这种情况,这是因为您在SSIS包中使用了Windows身份验证,这意味着当您运行它时,它将使用您的Windows用户,当您从服务器运行它时,它将使用服务器用户。

换句话说,避免在SSIS中使用Windows身份验证并将其更改为常规SQL用户,这将解决您的问题。