SQL Agent服务无法启动如何破

时间:2022-11-29 17:17:02

问题现象

从阿里云上镜像过来的一台的数据库服务器,SQL Agent服务启动不了,提示服务启动后停止。(原数据库服务器是正常的,怀疑跟镜像有关)

SQL Agent服务无法启动如何破

如下是系统日志和SQL Agent的日志

SQLServerAgent could not be started (reason: 无法连接到服务器“(local)”;SQLServerAgent 无法启动)
-- :: - ? [] Microsoft SQLServerAgent 版本 11.0.3000.0 (内部版本号 X64 unicode 零售): 进程 ID
-- :: - ? [] SQL Server 代理启动服务帐户是 WORKGROUP\iZ23egtmtrmZ$。
-- :: - ! [] SQL Server 不接受连接(错误: )。请等待 SQL Server 允许连接。尝试的操作为: 启动时验证连接。
-- :: - ! [] 无法连接到服务器“(local)”;SQLServerAgent 无法启动
-- :: - ! [] SQLServer 错误: ,用户 'NT AUTHORITY\ANONYMOUS LOGON' 登录失败。 [SQLSTATE ]
-- :: - ! [] 无法登录到服务器“(local)”(DisableAgentXPs)
-- :: - ? [] SQLServerAgent 已终止(一般)

解决方法

在注册表中,定位到SQL Agent的ServerHOST属性:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11.SQL2012\SQLServerAgent\ServerHost

其中MSSQL.X表示实例信息,其命名规则为:MSSQL版本号.实例名,如我机器上的MSSQL11.SQL2012,你机器上的实例名可能不同,另外,如果你的主机上安装了多个实例,也会有多个这样的选项,请根据实际情况查找,或者直接使用CTRL+F查找ServerHost关键字。

双击打开ServerHOST属性,在“数值数据”下填入np:servername

SQL Agent服务无法启动如何破

其中servername就是服务器的主机名。

最后再去启动SQL Server Agent,便可以了。