Fehler 1069 tritt auf, wenn Sie SQL Server Service starten

Beim Starten des SQL Server-Diensts wird der Fehler 1069 angezeigt, der zu einem Anmeldefehler führt. Dieser Artikel enthält Lösungen für Ereignisse im Zusammenhang mit Fehler 1069.

Ursprüngliche Produktversion: SQL Server
Ursprüngliche KB-Nummer: 282254

Symptome

Wenn Sie versuchen, Microsoft SQL Server oder die SQL Server-Agent neu zu starten, wird der Dienst nicht gestartet, und Sie erhalten die folgenden Fehlermeldungen, je nachdem, wie Sie versuchen, den Dienst zu starten:

  • Verwenden Sie das Applet Dienste:

    Windows konnte den SQL Server-Dienst auf dem lokalen Computer nicht starten.
    Fehler 1069: Der Dienst wurde aufgrund eines Anmeldefehlers nicht gestartet.

  • Verwenden Sie eine Eingabeaufforderung:

    Systemfehler 1069 ist aufgetreten.
    Der Dienst wurde aufgrund eines Anmeldefehlers nicht gestartet.

Im Systemereignisprotokoll werden möglicherweise Nachrichten mit der Ereignis-ID 7041 oder 7038 protokolliert.

Ursache

Dieses Problem tritt auf, weil entweder ein Problem mit dem Dienstkonto selbst oder den Informationen vorliegt, die derzeit für das Dienstkonto gespeichert sind.

Lösung für Ereignis-ID 7041

Der Eintrag mit der Ereignis-ID 7041 im Systemereignisprotokoll kann die folgende Fehlermeldung enthalten:

Anmelden gescheitert: Dem Benutzer wurde der angeforderte Anmeldetyp auf diesem Computer nicht gewährt.

Der vollständige Meldungseintrag im Ereignisprotokoll ähnelt dem folgenden:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7041
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as NT Service\MSSQLSERVER with the currently configured password due to the following error:
Logon failure: the user has not been granted the requested logon type at this computer.

Service: MSSQLSERVER  
Domain and account: <AccountName>

This service account does not have the required user right "Log on as a service."

User Action

Assign "Log on as a service" to the service account on this computer. You can use Local Security Settings (Secpol.msc) to do this.
If this computer is a node in a cluster, check that this user right is assigned to the Cluster service account on all nodes in the cluster.

If you have already assigned this user right to the service account, and the user right appears to be removed,
check with your domain administrator to find out if a Group Policy object associated with this node might be removing the right.

Um dieses Problem zu beheben, überprüfen Sie, welche Benutzerrechte dem SQL Server-Dienstkonto zugewiesen sind.

  1. Starten Sie die lokale Sicherheitsrichtlinie (Start –> Secpol.msc).

  2. Erweitern Sie Lokale Richtlinie , und wählen Sie dann Zuweisung von Benutzerrechten aus.

  3. Überprüfen Sie, ob dem Dienstkonto die erforderlichen Benutzerrechte zugewiesen sind, indem Sie die Anweisungen unter Windows-Berechtigungen und -Rechte befolgen. Weisen Sie alle fehlenden Berechtigungen manuell zu.

  4. Überprüfen Sie, ob dem Dienstkonto Berechtigungen vom Typ Deny* zugewiesen wurden. Entfernen Sie alle Deny*-Berechtigungen aus dem SQL-Dienstkonto, und testen Sie dann erneut.

    Wenn dem Dienstkonto beispielsweise die Option Anmelden als DienstSeDenyServiceLogonRight verweigern und sich als DienstSeServiceLogonRight anmelden zugewiesen wurde, widerrufen Sie das SeDenyServiceLogonRight Recht für die Anmeldung, und starten Sie SQL Server neu.

Lösung für Ereignis-ID 7038

In den Protokolleinträgen, die im Zusammenhang mit der Ereignis-ID 7038 stehen, finden Sie möglicherweise die folgenden Fehlermeldungen:

Dieser Benutzer kann sich nicht anmelden, da dieses Konto derzeit deaktiviert ist.

Der vollständige Meldungseintrag im Ereignisprotokoll ähnelt dem folgenden:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
This user can't sign in because this account is currently disabled.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Verwenden Sie basierend auf Ihrem Szenario eine der folgenden Methoden, um dieses Problem zu beheben:

  • Wenn SQL Server Startkonto ein lokales Benutzerkonto auf dem Computer ist, öffnen Sie *Computerverwaltung (compmgmt.msc), und überprüfen Sie unter Lokale Benutzer und Gruppen, ob das Dienstkonto deaktiviert ist. Wenn es deaktiviert ist, aktivieren Sie das Konto, und starten Sie den SQL Server-Dienst neu.

  • Wenn SQL Server Startkonto ein Windows-Domänenkonto ist, überprüfen Sie, ob das Konto in Active Directory-Benutzer und -Computer deaktiviert ist. Wenn es deaktiviert ist, aktivieren Sie das Konto, und starten Sie den SQL Server-Dienst neu.

Das Kennwort des Benutzers muss vor der Anmeldung geändert werden.

Der vollständige Meldungseintrag im Ereignisprotokoll ähnelt dem folgenden:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
The user's password must be changed before signing in.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Verwenden Sie basierend auf Ihrem Szenario eine der folgenden Methoden, um dieses Problem zu beheben:

  • Wenn das SQL Server Startkonto ein lokales Benutzerkonto auf dem Computer ist:

    1. Öffnen Sie Computerverwaltung (compmgmt.msc).
    2. Wählen Sie Lokale Benutzer und Gruppen und dann Benutzer aus, um das Konto zu suchen.
    3. Doppelklicken Sie auf das Benutzerkonto, um dessen Eigenschaften zu öffnen.
    4. Deaktivieren Sie die Eigenschaft Benutzer muss kennwort bei der nächsten Anmeldung für SQL Server Startkonto ändern, und drücken Sie OK.
    5. Starten Sie den SQL Server-Dienst neu.
  • Wenn das SQL Server-Startkonto ein Windows-Domänenkonto ist:

    1. Öffnen Sie Active Directory-Benutzer und -Computer auf einem Domänencontroller.
    2. Wählen Sie Unter der richtigen Domäne Benutzer aus.
    3. Doppelklicken Sie auf das Domänenkonto, das als SQL Server Dienstkonto verwendet wird, um dessen Eigenschaften zu öffnen.
    4. Wechseln Sie zur Registerkarte Konto , um zu überprüfen, ob Benutzer muss Kennwort bei der nächsten Anmeldung ändern aktiviert ist. Wenn die Option aktiviert ist, deaktivieren Sie diese Option, oder melden Sie sich interaktiv bei einem Windows-Clientcomputer an, und legen Sie dann ein neues Kennwort fest.
    5. Wenn Sie das Kennwort geändert haben, aktualisieren Sie das neue Kennwort für den SQL Server-Dienst mithilfe des tools SQL Server-Konfigurations-Manager.

Der Benutzername oder das Kennwort ist falsch.

Bei einem Problem mit einem falschen Kennwort ähnelt der vollständige Meldungseintrag im Ereignisprotokoll dem folgenden:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
The user name or password is incorrect.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Gehen Sie folgendermaßen vor, um dieses Problem zu beheben:

Szenario 1: Falsches Kennwort

Der Fehlermeldungseintrag gibt an, dass der aktuelle Anmeldename oder kennwortsatz falsch ist. Führen Sie die folgenden Schritte aus, um das Problem zu überprüfen und zu beheben:

  1. Verwenden Sie die runas Option, um die Anmeldeinformationen des Dienstkontos zu testen:

    1. Öffnen Sie eine Windows-Eingabeaufforderung.

    2. Führen Sie den folgenden Befehl aus:

      runas /user:<localmachine>\<SQLSerivceAccount> cmd
      
  2. Wenn der Befehl erfolgreich ist, geben Sie die gleichen Anmeldeinformationen sorgfältig in SQL Server-Konfigurations-Manager, Dienste, SQL Server Dienst und Dieses Konto ein.

  3. Wenn der Befehl fehlschlägt und dasselbe Problem meldet, müssen Sie das Kennwort für die Windows-Anmeldung zurücksetzen.

  4. Wenn das SQL Server Startkonto ein lokales Benutzerkonto auf dem Computer ist, öffnen Sie die Computerverwaltung (compmgmt.msc), und setzen Sie das Kennwort des lokalen Benutzers zurück.

  5. Wenn das SQL Server-Startkonto ein Windows-Domänenkonto ist, öffnen Sie Active Directory-Benutzer und -Computer, und aktualisieren Sie dann das Kennwort für das Konto unter Benutzer. Nachdem die Anmeldeinformationen aktualisiert wurden, kehren Sie zum SQL Server-Konfigurations-Manager, DiensteSQL Server zurück, und geben Sie die gleichen Anmeldeinformationen ein.

  6. Starten Sie den SQL Server-Dienst neu.

    Um das richtige Kennwort im SQL Server-Dienstkonto auf dem SQL Server Hostcomputer einzugeben, befolgen Sie die Schritte unter SCM Services – Ändern des Kennworts der verwendeten Konten.

Szenario 2: gMSA IsManagedAccount Flag wird nicht ordnungsgemäß festgelegt

Wenn Sie ein gMSA-Konto (Group Managed Service Accounts) verwenden, um den SQL Server Service auszuführen und das IsManagedAccount Flag für den angegebenen Dienst auf false festgelegt ist, erhalten Sie möglicherweise die Service Control Manager-Ereignis-ID 7038, sobald das zwischengespeicherte Geheimnis ungültig ist.

Führen Sie die folgenden Schritte aus, um das Problem zu identifizieren und zu beheben:

  1. Vergewissern Sie sich, dass es sich bei dem von Ihnen verwendeten Konto um ein gMSA-Konto handelt. Fahren Sie erst nach der Bestätigung von gMSA fort.

    • Wenn der folgende Befehl für das Konto erfolgreich ausgeführt wird, verwenden Sie ein gMSG-Konto.
    • Wenn mit ein Fehler auftritt Cannot find an object with identity: 'account', ist das Dienstkonto kein gMSA-Konto.
    Get-ADServiceAccount -Identity 'yourGmsaName' -Properties PasswordLastSet
    

    Weitere Informationen finden Sie unter Überprüfen des gMSA-Kontos.

  2. Führen Sie den folgenden Befehl in der Eingabeaufforderung aus, und überprüfen Sie die status von IsManagedAccount. Das gewünschte Ergebnis ist true. Wenn es false ist, fahren Sie weiter fort.

    sc qmanagedaccount <YourSQLServiceName>
    

    Ein Beispiel für eine SQL Server namens instance SQLPROD:

    sc qmanagedaccount MSSQL$SQLPROD
    
  3. Legen Sie das Flag wie gewünscht auf true fest.

    sc managedaccount <YourSQLServiceName> TRUE
    

    Ein Beispiel für eine SQL Server namens instance SQLPROD:

    sc managedaccount MSSQL$SQLPROD TRUE
    
  4. Versuchen Sie, den Dienst erneut zu starten.

Das Konto, auf das verwiesen wird, ist derzeit gesperrt und möglicherweise nicht bei angemeldet.

Der vollständige Meldungseintrag im Ereignisprotokoll ähnelt dem folgenden:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as .\sqlsrvlogin with the currently configured password due to the following error:
The referenced account is currently locked out and may not be logged on to.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Verwenden Sie basierend auf Ihrem Szenario eine der folgenden Methoden, um dieses Problem zu beheben:

  • Wenn das SQL Server Startkonto ein lokales Benutzerkonto auf dem Computer ist:

    1. Öffnen Sie Die Computerverwaltung (compmgmt.msc), und wechseln Sie zu Lokale Benutzer und Gruppen. Wählen Sie dann Benutzer aus.
    2. Deaktivieren Sie das Kontrollkästchen Konto ist gesperrt für das SQL Server Startkonto unter Lokale Benutzer und Gruppen, und wählen Sie OK aus.
    3. Starten Sie den SQL Server-Dienst neu.
  • Wenn das SQL Server-Startkonto ein Windows-Domänenkonto ist:

    1. Öffnen Sie Active Directory-Benutzer und -Computer auf dem Domänencontroller.
    2. Doppelklicken Sie unter Benutzer auf das SQL Server Startkonto, und wechseln Sie zur Registerkarte Konto.
    3. Überprüfen Sie, ob das Konto als gesperrt markiert ist.
    4. Wenn das Konto gesperrt ist, aktivieren Sie das Kontrollkästchen Konto entsperren , und wählen Sie OK aus, legen Sie ein sicheres Kennwort fest.
    5. Verwenden Sie dann dieselben Anmeldeinformationen für die Konfiguration des SQL Server-Dienstkontos in SQL Server-Konfigurations-Manager, Diensten und SQL Server.
    6. Starten Sie den SQL Server-Dienst neu.

Die angegebene Domäne ist entweder nicht vorhanden oder konnte nicht kontaktiert werden.

Der vollständige Meldungseintrag im Ereignisprotokoll ähnelt dem folgenden:

Log Name:      System
Source:        Service Control Manager
Date:          <Datetime>
Event ID:      7038
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      <Server name>
Description:
The MSSQLSERVER service was unable to log on as xxx with the currently configured password due to the following error:
The specified domain either does not exist or could not be contacted.

To ensure that the service is configured properly, use the Services snap-in in Microsoft Management Console (MMC).

Verwenden Sie basierend auf Ihrem Szenario eine der folgenden Methoden, um dieses Problem zu beheben:

  • Konfigurieren Sie den SQL Server Start für bestimmte Windows-Server verzögert, um sicherzustellen, dass andere Windows-Dienste wie NetLogon zuerst abgeschlossen werden und SQL Server ohne Probleme gestartet werden. Dies ist die Standardkonfiguration von SQL Setup ab SQL Server 2022.

  • Wenn die Option verzögerter Start das Problem für Ihr Szenario nicht behebt, besteht eine alternative Option darin, die Wiederherstellungsoptionen für die SQL Server-Dienste zu ändern. Geben Sie "Dienst neu starten" als Aktion für die Fehleroptionen an. Sie können diese Option über das Applet Dienste der Verwaltungstools mithilfe der vertrauten Service Control Manager-Schnittstellen ausführen.

    • Diese Option wird für SQL-Failoverclusterinstanzen (FCIs) oder Verfügbarkeitsgruppen (AGs) nicht empfohlen, da dies bei automatischen Failoverszenarien zu Verzögerungen führen kann.
  • Wenn keine der vorherigen Optionen möglich ist, können Sie den SQL Server Dienst mit dem folgenden Befehl in einer Befehlszeilenkonsole mit erhöhten Rechten so konfigurieren, dass er vom NETLOGON-Dienst abhängig ist:

    sc config <YourSQLServiceName> depend=keyiso/netlogon
    

    Ein Beispiel für eine SQL Server namens instance SQLPROD:

    sc config MSSQL$SQLPROD depend=keyiso/netlogon