PRB:SQL Server 代理无法启动并显示错误 18456

文章翻译 文章翻译
文章编号: 237604
展开全部 | 关闭全部

症状

SQL Server 代理服务无法启动,同时您可能会在 Windows 事件查看器中看到以下错误信息:
SQLServerAgent could not be started (reason:Unable to connect to server; SQLServerAgent cannot start).
另外,如果试图从命令行启动 SQL Server 代理服务(例如,C:\MSSQL7\BINN\>sqlagent -c –v),也可能在 C:\MSSQL7\LOG\SQLAGENT.OUT 文件中看到以下错误信息:
7/13/99 2:07:43 PM - ?[129] SQLServerAgent starting under Windows NT service control
7/13/99 2:07:43 PM - ![298] SQLServer Error:18456, Login failed for user 'DomainName\UserName'.[SQLSTATE 28000]
7/13/99 2:07:43 PM - ![000] Unable to connect to server; SQLServerAgent cannot start
7/13/99 2:07:44 PM - ?[098] SQLServerAgent terminated (normally)

原因

BUILTIN\Administrators 登录没有访问 SQL Server 的权限或 BUILTIN\Administrators 登录已从 SQL Server 中删除,而 SQLAgent 服务正在 LocalSystem 帐户下启动。

如果 SQLAgent 服务在 SQL Server 企业管理器中单独列出的一个域帐户下或计算机帐户下启动,并且此帐户具有系统管理员 (sysadmin) 权限,则不会发生该问题。

替代方法

要将 BUILTIN\Administrators 帐户重新添加到 SQL Server 中,请启动 SQL 企业管理器。进入 \Servername\Security\Logins 并向 BUILTIN\Administrators 用户授予访问权限。

如果确实要拒绝 Windows NT 管理员对 SQL Server 的访问,可以删除 BUILTIN\Administrators 帐户。首先,将用于 SQL 代理服务的登录帐户作为 SQL Server 登录帐户来添加,并为该帐户分配系统管理员 (sa) 角色。然后从 BUILTIN\Administrators 帐户调用系统管理员 (sysadmin) 角色,或从 SQL 企业管理器中的 Logins 彻底删除 BUILTIN\Administrators 帐户。

有关其他信息,请参阅“SQL Server 联机图书”中的主题“查看和修改角色成员”;您可以通过访问以下 MSDN 网站查看此主题:
http://msdn.microsoft.com/library/en-us/adminsql/ad_security_9xpv.asp

更多信息

注意,当通过单击“控制面板”然后选择服务运行服务时,将不会出现任何提示性的错误信息。您必须查看 Windows 事件查看器或在命令提示符下启动服务才能查看这些消息。

属性

文章编号: 237604 - 最后修改: 2011年2月16日 - 修订: 1.1
关键字:?
kbsqldeveloper kbprb KB237604
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com