
在使用SQL Server代理时遇到问题。重新启动操作系统后,即使设置为自动启动,SQL Agent Service也没有启动。像往常一样,我开始四处寻找错误消息,并在下面的事件日志中找到它们。
Log Name: System
Source: Service Control Manager
Event ID: 7000
Task Category: None
Level: Error
Keywords: Classic
User: N/A
Description:
The SQL Server Agent (MSSQLSERVER) service failed to start due to the following error:
The system cannot find the file specified.
该消息表示服务正在尝试启动该进程(sqlagent.exe),但失败。
解决方法/事件ID 7000
当我们尝试手动启动它时,出现以下错误。

这是我们在事件日志中看到的相同错误。在查看服务的属性时,我发现“可执行文件的路径”中提到的路径是无效的路径。

该值为“ F:\ Program Files \ Microsoft SQL Server \ MSSQL14.MSSQLSERVER \ MSSQL \ Binn \ SQLAGENT.EXE” -i MSSQLSERVER”
对于我的客户端,所有二进制文件都位于C:驱动器中,理想情况下,此路径应为“ C:\ Program Files \ Microsoft SQL Server \ MSSQL14.MSSQLSERVER \ MSSQL \ Binn \ SQLAGENT.EXE” -i MSSQLSERVER。
不确定如何更改。更改在“ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ SQLSERVERAGENT”下的“ ImagePath”中定义的路径
您需要标识服务的名称,在属性中的“服务名称”下显示。如果您具有SQL Server的命名实例,则它将为SQLAgent $ InstanceName。

将ImagePath修改为C:\ Program Files \ Microsoft SQL Server \ MSSQL14.MSSQLSERVER \ MSSQL \ Binn \ SQLAGENT.EXE” -i MSSQLSERVER之后,我们就可以启动SQL Server代理服务,此问题已解决。
来源:https://blog.sqlauthority.com/2020/01/16/sql-server-event-id-7000-the-system-cannot-find-the-file-specified/




