Fehler 1069 tritt auf, wenn Sie SQL Server Service starten
Fehler 1069 beim Starten des SQL Server-Diensts, was zu einem Anmeldefehler führt. Dieser Artikel enthält Lösungen für Fehlerereignisse mit 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:
Mithilfe des Services-Applets:
Windows konnte den SQL Server-Dienst nicht auf dem lokalen Computer starten.
Fehler 1069: Der Dienst wurde aufgrund eines Anmeldefehlers nicht gestartet.Mithilfe einer Eingabeaufforderung:
Systemfehler 1069 ist aufgetreten.
Der Dienst wurde aufgrund eines Anmeldefehlers nicht gestartet.
Möglicherweise finden Sie Nachrichten mit der Ereignis-ID 7041 oder 7038, die im Systemereignisprotokoll protokolliert sind.
Ursache
Dieses Problem tritt auf, da es entweder ein Problem mit dem Dienstkonto selbst oder den Informationen gibt, die derzeit für das Dienstkonto gespeichert sind.
Auflösung für ereignis-ID 7041
Der Eintrag mit der Ereignis-ID 7041 im Systemereignisprotokoll kann die folgende Fehlermeldung enthalten:
Anmeldefehler: Dem Benutzer wurde der angeforderte Anmeldetyp auf diesem Computer nicht erteilt.
Der vollständige Nachrichteneintrag im Ereignisprotokoll ähnelt der 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.
Starten Sie die lokale Sicherheitsrichtlinie (Start -> Secpol.msc).
Erweitern Sie die lokale Richtlinie , und wählen Sie dann die Benutzerrechtezuweisung aus.
Ü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.
Überprüfen Sie, ob dem Dienstkonto eine Deny*-Berechtigung zugewiesen wurde. Entfernen Sie alle Deny*-Berechtigungen aus dem SQL Service-Dienstkonto, und testen Sie dann erneut.
Wenn z. B. dem Dienstkonto die Anmeldung als Dienst zusammen mit der Anmeldung als Dienst
SeServiceLogonRight
SeDenyServiceLogonRight
verweigert wurde, widerrufen Sie dasSeDenyServiceLogonRight
Recht für die Anmeldung, und starten Sie SQL Server neu.
Auflösung für Ereignis-ID 7038
In den Protokolleinträgen, die die Ereignis-ID 7038 betreffen, finden Sie möglicherweise die folgenden Fehlermeldungen:
- Dieser Benutzer kann sich nicht anmelden, da dieses Konto zurzeit deaktiviert ist.
- Das Kennwort des Benutzers muss vor der Anmeldung geändert werden.
- Der Benutzername oder das Kennwort ist falsch.
- Das referenzierte Konto ist zurzeit gesperrt und ist möglicherweise nicht angemeldet.
- Die angegebene Domäne ist entweder nicht vorhanden oder konnte nicht kontaktiert werden.
Dieser Benutzer kann sich nicht anmelden, da dieses Konto zurzeit deaktiviert ist.
Der vollständige Nachrichteneintrag im Ereignisprotokoll ähnelt der 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).
Um dieses Problem zu beheben, verwenden Sie eine der folgenden Methoden basierend auf Ihrem Szenario:
Wenn das SQL Server-Startkonto ein lokales Benutzerkonto auf dem Computer ist, öffnen Sie *ComputerVerwaltung (compmgmt.msc), und überprüfen Sie, ob das Dienstkonto in lokalen Benutzern und Gruppen deaktiviert ist. Wenn sie deaktiviert ist, aktivieren Sie das Konto, und starten Sie den SQL Server-Dienst neu.
Wenn das SQL Server-Startkonto ein Windows-Domänenkonto ist, überprüfen Sie, ob das Konto in Active Directory-Benutzer und -Computer deaktiviert ist. Wenn sie 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 Nachrichteneintrag im Ereignisprotokoll ähnelt der 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).
Um dieses Problem zu beheben, verwenden Sie eine der folgenden Methoden basierend auf Ihrem Szenario:
Wenn das SQL Server-Startkonto ein lokales Benutzerkonto auf dem Computer ist:
- Öffnen Sie die Computerverwaltung (compmgmt.msc).
- Wählen Sie "Lokale Benutzer und Gruppen " und dann " Benutzer " aus, um das Konto zu suchen.
- Doppelklicken Sie auf das Benutzerkonto, um dessen Eigenschaften zu öffnen.
- Löschen Sie das Kennwort bei der nächsten Anmeldeeigenschaft für das SQL Server-Startkonto, und drücken Sie OK.
- Starten Sie den SQL Server-Dienst neu.
Wenn das SQL Server-Startkonto ein Windows-Domänenkonto ist:
- Öffnen Sie Active Directory-Benutzer und -Computer auf einem Domänencontroller.
- Wählen Sie "Benutzer" unter der richtigen Domäne aus.
- Doppelklicken Sie auf das Domänenkonto, das als SQL Server-Dienstkonto verwendet wird, um dessen Eigenschaften zu öffnen.
- Wechseln Sie zur Registerkarte "Konto ", um zu überprüfen, ob der Benutzer das Kennwort bei der nächsten Anmeldung ändern muss. 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.
- 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 falschen Kennwortproblem ähnelt der vollständige Nachrichteneintrag im Ereignisprotokoll der 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).
Zur Behebung dieses Problems führen Sie die folgenden Schritte aus:
Szenario 1: Falsches Kennwort
Der Fehlermeldungseintrag enthält den Hinweis, dass der aktuelle Anmeldename oder das festgelegte Kennwort fehlerhaft ist. Führen Sie die folgenden Schritte aus, um das Problem zu überprüfen und zu lösen:
Verwenden Sie die
runas
Option zum Testen der Anmeldeinformationen des Dienstkontos:Öffnen Sie eine Windows-Eingabeaufforderung.
Führen Sie den folgenden Befehl aus:
runas /user:<localmachine>\<SQLSerivceAccount> cmd
Wenn der Befehl erfolgreich ist, geben Sie sorgfältig die gleichen Anmeldeinformationen in SQL Server-Konfigurations-Manager, Dienste, SQL Server-Dienst und dieses Konto ein.
Wenn der Befehl fehlschlägt und dasselbe Problem meldet, müssen Sie das Kennwort für die Windows-Anmeldung zurücksetzen.
Wenn das SQL Server-Startkonto ein lokales Benutzerkonto auf dem Computer ist, öffnen Sie computerverwaltung (compmgmt.msc), und setzen Sie das Kennwort des lokalen Benutzers zurück.
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". Kehren Sie nach der Aktualisierung der Anmeldeinformationen zu den SQL Server-Konfigurations-Manager, Diensten, SQL Server zurück, und geben Sie dieselben Anmeldeinformationen ein.
Starten Sie den SQL Server-Dienst neu.
Um das richtige Kennwort im SQL Server Service-Konto auf dem SQL Server-Hostcomputer einzugeben, befolgen Sie die Verfahren von SCM Services – Ändern des Kennworts der verwendeten Konten.
Szenario 2: gMSA IsManagedAccount Flag ist nicht ordnungsgemäß festgelegt
Wenn Sie ein Gruppenkonto für verwaltete Dienstkonten (gMSA) zum Ausführen des SQL Server-Diensts verwenden und das IsManagedAccount
Kennzeichen für den angegebenen Dienst auf "false" festgelegt ist, erhalten Sie möglicherweise eine Dienststeuerungs-Manager-Ereignis-ID 7038, sobald der zwischengespeicherte geheime Schlüssel ungültig ist.
Führen Sie die folgenden Schritte aus, um das Problem zu identifizieren und zu beheben:
Überprüfen Sie, ob es sich bei dem 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 ist, verwenden Sie ein gMSG-Konto.
- Wenn dies fehlschlägt
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".
Führen Sie den folgenden Befehl an der Eingabeaufforderung aus , und überprüfen Sie den Status von
IsManagedAccount
. Das gewünschte Ergebnis ist wahr. Wenn dies falsch ist, fahren Sie weiter fort.sc qmanagedaccount <YourSQLServiceName>
Beispiel für eine SQL Server-Benannte Instanz SQLPROD:
sc qmanagedaccount MSSQL$SQLPROD
Legen Sie die Kennzeichnung auf "true" wie gewünscht fest.
sc managedaccount <YourSQLServiceName> TRUE
Beispiel für eine SQL Server-Benannte Instanz SQLPROD:
sc managedaccount MSSQL$SQLPROD TRUE
Versuchen Sie erneut, den Dienst zu starten.
Das referenzierte Konto ist zurzeit gesperrt und ist möglicherweise nicht angemeldet bei
Der vollständige Nachrichteneintrag im Ereignisprotokoll ähnelt der 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).
Um dieses Problem zu beheben, verwenden Sie eine der folgenden Methoden basierend auf Ihrem Szenario:
Wenn das SQL Server-Startkonto ein lokales Benutzerkonto auf dem Computer ist:
- Öffnen Sie die Computerverwaltung (compmgmt.msc), und wechseln Sie zu "Lokale Benutzer und Gruppen". Wählen Sie dann "Benutzer" aus.
- 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.
- Starten Sie den SQL Server-Dienst neu.
Wenn das SQL Server-Startkonto ein Windows-Domänenkonto ist:
- Öffnen Sie Active Directory-Benutzer und -Computer auf dem Domänencontroller.
- Doppelklicken Sie unter "Benutzer" auf das STARTkonto von SQL Server, und wechseln Sie zur Registerkarte "Konto ".
- Überprüfen Sie, ob das Konto als gesperrt markiert ist.
- Wenn das Konto gesperrt ist, wählen Sie das Feld "Konto entsperren" und dann "OK" aus, legen Sie ein sicheres Kennwort fest.
- Verwenden Sie dann dieselben Anmeldeinformationen für die SQL Server-Dienstkontokonfiguration in SQL Server-Konfigurations-Manager, Diensten und SQL Server.
- Starten Sie den SQL Server-Dienst neu.
Die angegebene Domäne ist entweder nicht vorhanden oder konnte nicht kontaktiert werden.
Der vollständige Nachrichteneintrag im Ereignisprotokoll ähnelt der 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).
Um dieses Problem zu beheben, verwenden Sie eine der folgenden Methoden basierend auf Ihrem Szenario:
Konfigurieren Sie den Start von SQL Server so, dass der Start für bestimmte Windows-Server verzögert wird, wodurch sichergestellt wird, dass andere Windows-Dienste wie NetLogon zuerst abgeschlossen sind und SQL Server ohne Probleme gestartet wird. Dies ist die Standardkonfiguration von SQL Setup ab SQL Server 2022.
Wenn die Option für den verzögerten 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 mit dem Dienste-Applet der Verwaltungstools über die vertrauten Oberflächen des Dienststeuerungs-Managers nutzen.
- Diese Option wird für SQL-Failoverclusterinstanzen (FCIs) oder Verfügbarkeitsgruppen (Availability Groups, AGs) nicht empfohlen, da dies zu Verzögerungen bei automatischen Failoverszenarien führen kann.
Wenn keine der vorherigen Optionen machbar ist, können Sie den SQL Server-Dienst so konfigurieren, dass er von dem NETLOGON-Dienst abhängig ist, indem Sie den folgenden Befehl in einer Befehlszeilenkonsole mit erhöhten Rechten verwenden:
sc config <YourSQLServiceName> depend=keyiso/netlogon
Beispiel für eine SQL Server-Benannte Instanz SQLPROD:
sc config MSSQL$SQLPROD depend=keyiso/netlogon