【问题标题】:SSIS Package Failing on Executing JobSSIS 包在执行作业时失败
【发布时间】:2014-08-14 10:16:23
【问题描述】:

美好的一天,

我将一个包从 SSIS 导入到 SQL 以作为作业运行。 如果我在 MSSMS 中手动执行 SSIS 中的包,它会成功执行 一旦我将它作为作业运行,我就会收到以下错误:

以用户身份执行:NT AUTHORITY\LOCAL SERVICE。微软 (R) SQL Server 为 64 位执行包实用程序版本 10.50.1600.1 版权所有 (C) Microsoft Corporation 2010。保留所有权利。开始: 下午 12:10:22 错误:2014-08-14 12:10:22.07 代码:0xC0016016
来源:描述:无法解密受保护的 XML 节点 “DTS:Password”,错误 0x8009000B“密钥无效,无法用于 指定的状态。”。您可能无权访问此 信息。当存在加密错误时会发生此错误。 验证正确的密钥是否可用。结束错误错误: 2014-08-14 12:10:22.24 代码:0xC0202009 来源: TritonFuelImport 连接管理器“41.160.218.141.CCManager.sa”
说明:SSIS 错误代码 DTS_E_OLEDBERROR。 OLE DB 错误有 发生了。错误代码:0x80040E4D。 OLE DB 记录可用。 来源:“Microsoft SQL Server Native Client 10.0”Hresult:0x80040E4D 描述:“用户 'sa' 登录失败。”。结束错误错误: 2014-08-14 12:10:22.24 代码:0xC020801C 来源:数据流任务 OLE DB 目标 [15] 描述:SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。这 AcquireConnection 方法调用连接管理器 “41.160.218.141.CCManager.sa”失败,错误代码为 0xC0202009。 在此之前可能会发布带有更多信息的错误消息 关于 AcquireConnection 方法调用失败的原因。结束错误错误: 2014-08-14 12:10:22.24 代码:0xC0047017 来源:数据流任务 SSIS.Pipeline 描述:组件“OLE DB Destination”(15) 验证失败并返回错误代码 0xC020801C。结束错误 错误:2014-08-14 12:10:22.24 代码:0xC004700C 来源:数据 流任务 SSIS.Pipeline 描述:一个或多个组件失败 验证。结束错误错误:2014-08-14 12:10:22.24 代码: 0xC0024107 来源:数据流任务描述:有 任务验证期间的错误。结束错误 DTExec: 包 执行返回 DTSER_FAILURE (1)。开始时间:下午 12:10:22 完成时间:12:10:22 PM 经过时间:0.187 秒。包执行 失败的。步骤失败。

有人可以帮我解决这个问题吗?

【问题讨论】:

  • “您可能无权访问此信息。当存在加密错误时会发生此错误。请验证正确的密钥可用。”
  • "用户 'sa' 登录失败。"
  • 是的,我理解 sa 上的错误,但如果失败,为什么它在 Visual Studio 中工作?我是我错误地编译了包或者我该如何解决这个问题

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


【解决方案1】:

当您从 Visual Studio 执行包时,它会在您的用户主体下运行。当它通过 SQL 代理运行时,它在 SQL Server 设置的帐户下执行(本地服务或为此目的设置的域帐户)。现在,您的程序包的一部分(可能是连接管理器)具有名为 EncryptSensitive 和 ProtectionLevel (https://msdn.microsoft.com/en-us/library/ms141747.aspx) 的属性,默认情况下设置为您的用户帐户。

当 SQL 代理尝试执行时,它无法使用自己的密钥解密连接管理器上的敏感数据(可能是密码)。有两种解决方法:

【讨论】:

    【解决方案2】:

    您需要在 Visual Studio 数据工具中更改一个属性。查看属性选项卡,有一个密码加密选项。记忆中有3种不同的选择。如果这不起作用,请尝试在 SQL Server Management Studio 中进入安全性,然后进入凭据。然后单击添加凭据并添加成功运行作业的用户的凭据。然后在您的工作步骤中,进入该步骤并将“运行方式”设置为您创建的凭据。我还会检查作业步骤的高级选项卡,以确保用户名和密码的属性正确,有时它们不是从数据工具中部署的,您必须手动将它们添加到代理运行的作业步骤中.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-30
      • 2016-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-13
      相关资源
      最近更新 更多