问题现象

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

 

image

 

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

SQLServerAgent could not be started (reason: 无法连接到服务器“(local)”;SQLServerAgent 无法启动)

 

复制代码
2016-05-20 11:09:03 - ? [100] Microsoft SQLServerAgent 版本 11.0.3000.0 (内部版本号 X64 unicode 零售): 进程 ID 3568
2016-05-20 11:09:03 - ? [495] SQL Server 代理启动服务帐户是 WORKGROUP\iZ23egtmtrmZ$。
2016-05-20 11:09:03 - ! [150] SQL Server 不接受连接(错误: 18456)。请等待 SQL Server 允许连接。尝试的操作为: 启动时验证连接。
2016-05-20 11:09:03 - ! [000] 无法连接到服务器“(local)”;SQLServerAgent 无法启动
2016-05-20 11:09:03 - ! [298] SQLServer 错误:  18456,用户 \'NT AUTHORITY\ANONYMOUS LOGON\' 登录失败。 [SQLSTATE 28000] 
2016-05-20 11:09:03 - ! [382] 无法登录到服务器“(local)”(DisableAgentXPs)
2016-05-20 11:09:03 - ? [098] 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

image

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

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

版权声明:本文为gallen-n原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/gallen-n/p/6509844.html