Many times, I feel that I have so many blogs that I must have covered all common possible error related to the usage of SQL Server. But it looks like there are few easy ones which I missed. And thanks to those who take time in sending them to me that it makes a great reminder to what I have missed to date. This blog is from one that came from a DBA from one of my consulting engagements. Let us learn how to fix event id 7000 error.
My client told me that they are having an issue with SQL Server Agent. After restarting the operating system, SQL Agent Service didn’t start even though it was set to start automatically. As usual, I started looking around for error messages and fond them below in the event log.
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.
The message means that Services are trying to start the process (sqlagent.exe) but its failing.
WORKAROUND/SOLUTION – Event Id 7000
When we tried starting it manually, we got below error.
This is the same error that we see in the event log. When I looked into the properties of the service, I found that the path mentioned in “Path to executable” was an invalid path.
The value was “F:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn\SQLAGENT.EXE” -i MSSQLSERVER”
For my client, all binaries are in C: drive and ideally this path should be “C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn\SQLAGENT.EXE” -i MSSQLSERVER”
My client was not sure how it got changed. To change the path defined in “ImagePath”under “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLSERVERAGENT”
You need to identify the name of the service, shown under “Service name” in the properties. If you have a named instance of SQL Server, then it would be SQLAgent$InstanceName.
After modifying ImagePath, to C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn\SQLAGENT.EXE” -i MSSQLSERVER we were able to start SQL Server Agent Service and the issue was resolved.
Have you ever encountered this error ever in your environments? Do let me know what you did to solve the same.
Reference: Pinal Dave (https://blog.sqlauthority.com)
Thanks, this was helpful. Yes, it is happening for me. My situation is I have MS SQL installed on a separate vhdx (HyperV) virtual hard disk (not the C: drive which I have reserved for the 2019 OS). So, the path is right; however, on reboot I am still working to get the vhdx to mount automatically. The vhdx file is on the host rather than the VM. I think all will work if I can get the drive to attach (it works fine when I manually attach the drive).
I have a similar problem where after rebooting the SQL Server Service does not restart automatically even though it is set to. The error message is the same as in this article – event 7000 – “The system cannot find the file specified”. I can manually start the service though without changing anything. Does anyone have an idea why this would happen?
while my problem was wildly different (wrong drive letter after restore), your article triggered an “aha” moment to check on that. thank you !
What we eventually figured out was that SQL was trying to start before the iSCSI drives had become available. The solution was to make the SQL Server service dependent on the Microsoft iSCSI initiator service.
Thank you! This article gave a direction on where and what to check ,which ultimately cleared the problem.
Update: In my case the problem was a service needed to mount the drive was starting after SQL Server started. I had to add a dependency on the SQL service to ensure it started second.
check your sqlservr.exe file is not corrupted, if it is then try to start sql server from CMD C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLBinnsqlservr.exe -s MSSQLEXPRESS, if this not able to launch SQL then replace sqlservr.exe and job DONE!!
From my side, this problem appears after an upgrade from SQL2012 to SQL2014. I followed your article and it solved my problem. Thanks a lot