如何解决SQL Server服务启动权限问题

2010-08-28 10:47:36来源:西部e网作者:

症状

如果由于登录失败服务没有启动,可能显示下面的错误消息。

重新启动计算机时,可能会在系统事件日志中出现下面的错误消息:
源: Service Control Manager(来源:服务控制管理器)
事件 ID: 7000
说明:
The %service% service failed to start due to the following error:(由于如下错误,%service% 服务未能启动:)
The service did not start due to a logon failure.(由于登录失败而无法启动服务。)

No Data will be available.(无可用数据。) 源: Service Control Manager(来源:服务控制管理器)
事件 ID: 7013
说明:
Logon attempt with current password failed with the following error:(使用当前密码进行登录失败,出现如下错误:)
Logon failure: unknown user name or bad password.(登录失败:用户名未知或密码错误。)

No Data will be available.(无可用数据。)
如果试图手动启动服务,则可能显示如下错误消息:
Microsoft Management Console
Could not start the %service% service on Local Computer(未能在本地计算机上启动 %service% 服务)
Error 1069: The service did not start due to a logon Failure.(错误 1069:由于登录失败而无法启动服务。)
备注: 即便用户帐户是有效用户,也会出现错误消息。

原因

这个问题可能是由以下某个原因引起的:
服务被配置为要使用某个帐户才能登录,而该帐户的密码已更改。
注册表中的密码数据已损坏。
指定用户帐户的作为服务登录的权限被撤消。
 

解决方案

要解决这些问题,可以采取这些办法:将服务配置为使用内置系统帐户;更改指定用户帐户的密码,使之与该用户的当前密码相匹配;或将用户的权限还原为作为服务登录。

如何配置用户权限



如果指定的用户帐户的作为服务登录的权限被撤消,请执行如下步骤还原该权限:

域控制器



如果用户在 Active Directory 域中:
1. 启动 Active Directory 用户和计算机 Microsoft Management Console (MMC) 管理单元。
2. 如果用户是在某个部门 (OU) 中被授予作为服务登录的用户权限的,找到并右键单击该 OU。 默认情况下,这是在域控制器 OU 中。
3. 右键单击该容器,然后单击属性
4. 组策略选项卡上,打击默认域控制器策略,然后单击编辑。 这将启动组策略管理器。
5. 单击策略对象旁的加号 (+),展开“计算机配置”对象。 在“计算机配置”对象下面,展开 Windows 设置,然后展开安全设置
6. 展开本地策略,然后单击用户权限指派
7. 在右侧窗格中,右键单击作为服务登录,然后单击安全
8. 将用户添加到该策略,然后单击确定
9. 退出“组策略管理器”,关闭“组策略”属性,然后关闭 Active Directory 用户和计算机 MMC 管理单元。

成员服务器



如果用户是独立成员服务器的成员:
1. 启动“本地安全设置”MMC 管理单元。
2. 展开本地策略,然后单击用户权限指派
3. 在右侧窗格中,右键单击作为服务登录,然后单击安全
4. 将用户添加到该策略,然后单击确定
5. 关闭“本地安全设置”MMC 管理单元。
 

如何配置服务登录信息



要配置指定用户帐户的密码,使之与该用户的当前密码一致,请执行如下步骤:
1. 单击开始,指向设置,单击控制面板,然后双击管理工具
2. 双击服务
3. 右键单击相应的服务,然后单击属性
4. 登录选项卡上,更改该密码,然后单击应用
5. 常规选项卡上,单击启动,重新启动该服务。
6. 退出“服务”工具。
 

如何配置服务,让它使用内置的系统帐户启动



如果服务仍然无法使用指定的用户帐户工作,则可以对该服务进行配置,使它采用内置的系统帐户启动,配置过程如下:
1. 单击开始,指向设置,单击控制面板,然后双击管理工具
2. 双击服务
3. 右键单击相应的服务,然后单击属性
4. 登录选项卡上,单击本地系统帐户,然后单击应用

备注: 通常,不必将服务配置为与桌面交互,因此,可以让允许服务与桌面交互复选框保持未选中状态。
5. 常规选项卡上,单击启动,重新启动该服务。
6. 退出“服务”工具。
如果在“控制面板”中使用“服务”工具打开服务的属性,计算机可能停止响应(挂起),并且/或者可能显示如下错误消息:
RPC 服务器不可用
如果由于登录远程过程调用 (RPC) 服务或依存服务失败,而导致该服务没有启动,就会出现该错误消息。 某些服务有依存服务,必须在依存服务首先启动的情况下才会启动(例如,Workstation 服务)。

如果无法启动“服务”工具,请对服务进行配置以使用内置的系统帐户,进行该配置的过程如下:
1. 打开注册表编辑器 (regedit.exe)。 警告: “注册表编辑器”使用不当会导致严重的问题,这种问题可能需要重新安装操作系统。 Microsoft 不保证能够解决因为“注册表编辑器”使用不当而产生的问题。 使用注册表编辑器需要您自担风险。

有关如何编辑注册表的信息,请查看注册表编辑器 (Regedit.exe) 中的“改变项和值”帮助主题,或 Regedt32.exe 中的“添加和删除注册表中信息”和“编辑注册表数据”帮助主题。 注意,编辑注册表之前,应当先备份注册表。如果您运行的是 Windows NT 或 Windows 2000,还应该更新“紧急修复磁盘 (ERD)”。
2. 在如下注册表项中找到 ObjectName 值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ ServiceName
3. 编辑菜单上,单击修改
4. 数值数据框中,键入 localsystem,然后单击确定
5. 退出注册表编辑器。
6. 尝试重新启动该服务。 为了让某些服务正常重启,可能需要重新启动计算机。
如果无法启动注册表编辑器,则可以通过执行并行安装,来修改服务帐户信息。有关并行安装的其它信息,请单击以下文章编号,查看相应的 Microsoft Knowledge Base 文章:
165748 (http://support.microsoft.com/kb/165748/EN-US/) 如何禁用防止 NT 启动的服务或设备
虽然,大多数系统服务被配置为默认情况下使用系统帐户凭据进行登录,但您可以将其配置为使用指定的用户帐户。 如果用户密码已更改,服务的密码信息字段将不会被自动更改。

更多信息

要启动服务,可以使用本地系统帐户,或指定专门的用户帐户和密码。 如果选择指定用户帐户和密码,一定要让帐户名和密码保持不变。 例如,该帐户应当不需要更改密码或重命名。 如果发生了这两种事件(或其它类似的事件),那么,您还应当更新该服务的登录凭据。
 
这篇文章中的信息适用于:
Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 Server
Microsoft Windows 2000 Professional Edition
关键词:SQLServer

赞助商链接: