尝试运行服务器上创建的任何维护任务时出现以下错误:
Message
[LOG] Step 1 of job 'Weekly Backup' (0x8EC76A988468C74897562440AADD067D) cannot be run because the SSIS subsystem failed to load. The job has been suspended
维护任务最初是在几个月前设置的,直到本周运行良好。检查 SQL Server 代理日志时,我看到了上述错误。我尝试过重新启动服务、重新启动(如果文件锁定?),我也尝试过这里的建议:http://support.microsoft.com/?kbid=914171
use msdb
go
delete from msdb.dbo.syssubsystems
exec msdb.dbo.sp_verify_subsystems 1
go
并重新启动 SQL Agent。
相同的问题仍然存在,并且该作业被标记为已暂停。有什么想法吗?
答案1
本周服务器上发生了什么变化?有任何权限问题、补丁、卸载等吗?SQL Server 的修补程序 / SP / 更新?
以下是一些想法:
- 查看 SQL Server 日志文件和 Windows 应用程序和系统事件日志中的消息,这些消息可能会为您提供有关具体问题的更多详细信息。
- 确保在服务列表中看到 SQL Server Integration Services 并且它正在运行。(不过,我假设您在重新启动服务时执行此操作)
- 在您的服务器上运行此查询:
SELECT * FROM msdb.dbo.syssubsystems WHERE subsystem='SSIS'
并确保在结果集中返回一条记录。如果没有,那么您可能需要在服务器上重新安装 Integration Services。 - 如果您确实从上一点的查询中获得了记录,请验证文件是否存在于和列中的路径中
subsystem_dll
,agent_exe
以及文件夹和文件的权限是否良好。如果文件不存在,您可能需要重新安装集成服务。
答案2
这种情况可能发生在具有多个实例的服务器上,其中一个实例已升级。SQL 2005 和 2008 SSIS 子系统彼此不太兼容,当您执行 SQL 2008 就地升级时,它将升级 SSIS,更改 DTExec 和所需 dll 的路径。