SQLServerAgent could not be started (reason: Unable to connect to server '(local)'; SQLServerAgent cannot start)If you are trying to start SQL Server Agent and you get the below error message:
SQLServerAgent could not be started (reason: Unable to connect to server '(local)'; SQLServerAgent cannot start).
...then this is what you can try:
Go to computer management - local users and groups, and add the service account with which you want SQL Server Agent service to start in the below Windows group:
Then, make sure that the service account meets the requirements described on the following MSDN Article.
One of the requirements is that the SQL Server Agent service account is SysAdmin on the SQL Server instance.
So, among the rest of the requirements, make sure that the local Windows Group "SQLServerSQLAgentUser$[ComputerName]$[InstanceName]" has SysAdmin access on the SQL Server instance (important note: never add any irrelevant users to this group - just the service account that start SQL Server agent service).
The last step is to go to SQL Server Configuration Manager, enter SQL Server Agent properties and make sure that the service account that starts the service is the one for which you followed the above steps.
Note: In order to avoid such issues in the future, make sure that during the installation of SQL Server you specify the proper service accounts. This way, SQL Server's installation process will automatically grant the necessary permissions and arrange the required group memberships for the specified service accounts.