You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server Agent调度SSIS作业失败,SA账户登录错误求助

问题:SQL Server Agent调度SSIS包失败(SA登录错误)

我使用SA账户(系统管理员)运行SSIS包,该包单独执行时无任何问题。但将其通过SQL Server Agent调度为作业后,作业无法正常运行。配置调度作业时,所用凭据可正常从服务器找到目标SSIS包。

错误日志

Executed as user: NT Service \SQLSERVERAGENT. Microsoft (R) SQL Server Execute Package Utilty Version 16.0.1000.6 for 64-bit Copyright (C) 2022 Microsoft. All rights reserved.
xxxxxx Connection manager "SourceConnectionOLEDB**
Started: 11:30:00 AM Error: 2024-09-04 11:30:06.09 Code: 0xC0202009
Source: Data 360
Description: "Login failed for user "SA'". End Error Error: 2024-09-04 11:30:06.09
Description: SSIS Eror Code DTS_ E OLEDBERROR, An OLE DB error has occurred, Eror code: 0x800404D. An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0 Hresurce: 30040E40
Source: Data Flow Task 1 Source - Query [20]
Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The
11:30:06.09 Code: 0xC0047017
Source: Data Flow Task 1 SSIS. Pipeline
Description: Source - Query failed validation and returned error code 0xC020801C.
Description: One or more component failed validation. End Eror Error: 2024-09-04 11:30:06.09
End Error Error: 2024-09-04 11:30:06.09
Code: 0xC0024107
Source: Data Flow Task 1 SSIS.Pipeline
Source: Data Flow Task
Started: 11:30:00 AM Finished: 11:30:06 AM Elapsed: 5.203 seconds. The package execution failed. The step failed.
Description: There were errors during task validation. End Error DExec: The package execution returned DTSER_FAILURE (1).

原因分析

  • 执行身份差异:SQL Server Agent作业默认以NT Service\SQLSERVERAGENT账户执行,手动运行包时用的是SA账户,两者权限上下文完全不同。
  • 敏感信息解密失败:若SSIS包保护级别设为EncryptSensitiveDataWithUserKey,仅创建/手动运行包的用户能解密SA密码这类敏感信息,Agent账户无法解密,导致登录失败。
  • SA账户配置异常:目标SQL Server可能未启用混合身份验证模式,或SA账户被禁用、密码错误;手动运行时可能实际用的是Windows身份验证,而非SA登录。
  • 权限不足:NT Service\SQLSERVERAGENT账户本身无目标数据库访问权限,即使包中配置了SA信息,也可能因环境限制无法使用。

解决方案

  • 修改作业执行身份:在SQL Server Agent作业步骤配置中,选择具备SSIS包访问权限和数据库权限的代理账户(而非默认Agent服务账户),确保该账户能正常访问目标数据库。
  • 调整SSIS包保护级别:
    • 将保护级别改为EncryptSensitiveDataWithPassword,并在作业步骤中指定解密密码;或改为ServerStorage(若包部署在SSIS目录),由SQL Server管理敏感信息。
    • 若允许,改用Windows身份验证配置连接管理器,确保Agent执行账户(或代理账户)拥有目标数据库访问权限。
  • 验证身份验证模式:确认目标SQL Server已启用「SQL Server和Windows身份验证模式」,且SA账户状态正常(未禁用、密码正确)。
  • 检查账户权限:确保NT Service\SQLSERVERAGENT或代理账户拥有SSIS目录读取权限,以及目标数据库的登录权限(若用Windows身份验证)。

内容的提问来源于stack exchange,提问作者bitterjam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 20:54:51