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

使用SQL脚本运行SSIS包时出现Access Denied错误求助

解决SSIS包执行错误0xC00160AE的实操方案

你遇到的这个错误(0xC00160AE),本质是执行作业的SQL Server Agent账户(NT Service\SQLSERVERAGENT)无法连接到目标服务器的Integration Services(SSIS)服务,或者包本身的配置、权限存在问题。结合你给出的错误信息,我整理了一步步的排查和解决方法:

  • 先确认SSIS服务是否正常运行
    打开目标服务器的服务管理器(运行services.msc),找到SQL Server Integration Services服务,检查它是否处于「正在运行」状态。如果没启动,手动启动它,同时把启动类型设为「自动」,避免服务器重启后服务停掉。

  • 给Agent账户配置SSIS服务权限
    NT Service\SQLSERVERAGENT这个内置账户需要具备访问SSIS服务的权限,操作步骤如下:

    1. 打开SQL Server Management Studio(SSMS),在「服务器类型」里选择Integration Services,连接到目标服务器。
    2. 右键点击服务器名称,选择「属性」,切换到「权限」标签页。
    3. 添加NT Service\SQLSERVERAGENT账户,至少赋予它「读取」和「执行」权限(如果需要管理包,可按需添加更高权限)。
    4. 保存设置后,重启SQL Server Agent服务让权限生效。
  • 验证包的路径和存在性
    错误里指定的包路径是\MSDB\TestPac,请确认这个包确实存在于MSDB的SSIS包存储中:在SSMS的Integration Services节点下,展开「存储的包」→「MSDB」,检查是否有TestPac这个包,路径要完全匹配(注意部分环境下大小写可能敏感)。

  • 检查64位运行时兼容性
    你的Execute Package Utility是64位版本(Version 12.0.5000.0 for 64-bit),如果SSIS包依赖了32位组件(比如旧版Excel驱动、32位OLE DB provider等),会导致加载失败。这种情况下,需要在SQL Agent作业的步骤设置里,勾选「使用32位运行时」选项(在作业步骤的「配置」标签页中)。

  • 确认服务器名称的准确性
    错误信息里的「Server Name」要确保是正确的目标服务器名称,如果是本地执行,也可以尝试用localhost代替。如果是远程服务器,还要检查网络连通性,确保防火墙没有阻止SSIS服务的端口(默认是135端口+动态端口,或者你配置的固定端口)。

  • 获取完整错误日志定位问题
    你提供的错误信息被截断了,建议查看SQL Server Agent的作业历史日志:在SSMS里展开「SQL Server Agent」→「作业」,找到对应的作业,右键选择「查看历史记录」,找到失败的步骤,查看完整的错误详情,这能帮你更精准地定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:54:07