SQL Server 服务由于登录失败而无法成功启动


症状


在重新启动 Microsoft SQL Server 或 SQL Server Agent 时,可能无法启动该服务,并显示以下错误消息:

错误 1069:由于登录失败而无法启动服务。

原因


出现此问题是由于 SQL Server 或 SQL Server Agent 启动服务帐户的密码不正确。如果帐户密码被更改,但 SQL Server 服务或 SQL Server Agent 服务的密码信息并未更新,则会出现此问题。

替代方法


要解决此问题,请在 SQL Server 主机的 Microsoft SQL Server 服务帐户中键入正确的密码。

要在 Microsoft Windows 2000 Server 和 Microsoft Windows XP 中更正该密码,请按照下列步骤操作:
  1. 单击开始,指向设置,然后单击控制面板
  2. 双击管理工具,然后双击服务
  3. 根据您的实例类型,执行以下步骤之一:
    • 对于 SQL Server 的默认实例,请双击“MSSQLServer”,然后单击“登录”选项卡。
    • 对于 SQL Server 的已命名实例,请双击“MSSQL$YourInstanceName”,然后单击“登录”选项卡。将 YourInstanceName 替换为 SQL Server 实例的实际名称。
    • 对于 SQL Server Agent 的默认实例,请双击“SQLAgent”,然后单击“登录”选项卡。
    • 对于 SQL Server Agent 的已命名实例,请双击“SQLAgent$YourInstanceName”,然后单击“登录”选项卡。将 YourInstanceName 替换为 SQL Server 实例的实际名称。
  4. 密码和确认密码文本框中键入正确的密码,然后单击确定
要在 Microsoft Windows NT 4.0 中更正该密码,请按照下列步骤操作:
  1. 单击开始,指向设置,然后单击控制面板
  2. 根据您的实例类型,执行以下步骤之一:
    • 对于 SQL Server 的默认实例,请双击“MSSQLServer”,然后单击“登录”选项卡。
    • 对于 SQL Server 的已命名实例,请双击“MSSQL$YourInstanceName”,然后单击“登录”选项卡。将 YourInstanceName 替换为 SQL Server 实例的实际名称。
    • 对于 SQL Server Agent 的默认实例,请双击“SQLAgent”,然后单击“登录”选项卡。
    • 对于 SQL Server Agent 的已命名实例,请双击“SQLAgent$YourInstanceName”,然后单击“登录”选项卡。将 YourInstanceName 替换为 SQL Server 实例的实际名称。
  3. 密码和确认密码文本框中键入正确的密码,然后单击确定
注意:通过 Services 小程序更改该密码使 SQL Server 可以成功重新启动;但是,如果安装了 Microsoft 搜索(全文搜索服务),则它要求通过 SQL 企业管理器 (SEM) 进行随后的密码更改。

注意:如果您使用的是 SQL Server 2005,请参见 SQL Server 2005 联机丛书中的“更改密码和用户帐户”主题。

以下部分摘自 SQL Server 2000 联机丛书:
“After changing the SQL Server service account information in Control Panel, you must also change the SQL Server service account in SQL Server Enterprise Manager.This allows the service account information for Microsoft Search service to remain synchronized as well.

Important:Although the Microsoft Search service is always assigned to the local system account, the full-text search engine tracks the SQL Server service account in Windows.Full-text search and failover clustering are not available if Windows password changes are not reset using SQL Server Enterprise Manager.”(在控制面板中更改 SQL Server 服务帐户信息后,您还必须在 SQL Server 企业管理器中更改 SQL Server 服务帐户。这样,用于 Microsoft Search 服务的服务帐户信息也会保持同步。 重要说明:尽管将 Microsoft Search 服务始终分配给本地系统帐户,但全文搜索引擎跟踪 Windows 中的 SQL Server 服务帐户。如果没有使用 SQL Server 企业管理器重置 Windows 密码更改,则无法使用全文搜索和故障转移群集。)
通过使用 SEM,右键单击服务器,单击属性,然后单击安全选项卡。在启动服务帐户下面,输入相应的帐户和密码。

更多信息


如果在 SQL Server 2000 和 Microsoft Windows 2000 环境中使用 Kerberos 安全支持提供程序接口 (SSPI) 身份验证,则必须删除旧的服务主体名称 (SPN),然后使用新的帐户信息创建一个新的服务主体名称。有关使用 SETSPN 来完成这一操作的详细信息,请参见 SQL Server 2000 联机丛书中的“安全帐户委派”主题。