Februar 2, 2022

Wie kann ich das SA-Passwort auf dem Microsoft SQL Server zurücksetzen?

In diesem Artikel erfahren Sie, wie Sie das SA-Kennwort (Systemadministrator) in Microsoft SQL Server 2019/2017/2014/2012 zurücksetzen . Dieses Handbuch hilft Ihnen, den Zugriff auf die MSSQL-Datenbank wiederherzustellen, wenn Sie sich nicht mit dem sa -Konto authentifizieren können (das sa -Kennwort wurde vergessen / verloren / das Konto wurde deaktiviert) oder als Windows-Benutzer (wenn keine Benutzer mit MS SQL Sysadmin-Berechtigungen vorhanden sind).

Die lokale sa ist ein bekanntes Administratorkonto in SQL Server. In den meisten Fällen ist es deaktiviert, aber Sie können es aktivieren, das Kennwort festlegen / zurücksetzen und den Zugriff auf Ihren SQL Server wiederherstellen.

Um den Zugriff auf die Datenbank wiederherzustellen, ohne die MS SQL-Instanz vollständig neu zu installieren (und mit dem Verlust der Master-Datenbank), müssen Sie SQL Server im Einzelbenutzermodus starten. In diesem Modus können Sie sich unter jedem Konto mit lokalen Administratorberechtigungen auf dem Computer, auf dem MS SQL Server installiert ist, bei SQL Server anmelden. Anschließend können Sie das Kennwort für das sa-Konto zurücksetzen und / oder bestimmten Windows-Konten Administratorberechtigungen erteilen.

Trinkgeld. Ab SQL Server 2008 wird die Rolle Systemadministrator auf einem SQL Server nicht standardmäßig der lokalen Windows-Administratorengruppe zugewiesen.

Um MS SQL Server im Einzelbenutzermodus auszuführen, melden Sie sich unter Windows unter einem beliebigen Konto mit lokaler Administratorberechtigung beim MSSQL-Host an.

  1. Beenden Sie die SQL Server-Instanz (in unserem Beispiel lautet der MSSQL-Instanzname MSSQLSERVER) über die Eingabeaufforderung net stop MSSQLSERVER oder mithilfe von PowerShell: Get-Service MSSQLSERVER| Stop-Service Stoppen Sie den MSSQLSERVER über die CLI
  2. Öffnen Sie den Registrierungseditor (regedit.exe) und wechseln Sie zum Registrierungsschlüssel des SQL-Dienstes: HKEY_LOCAL_MACHINE \SYSTEM\ControlSet001\Services\MSSQLSERVER;
  3. Ändern Sie den Wert des Parameters ImagePath, indem Sie die Option -m als Argument sqlservr.exe. Legen Sie beispielsweise die folgende Startzeichenfolge fest: "C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\sqlservr.exe" -sMSSQLSERVER -m sql Server im Einzelbenutzermodus über die Registrierung ausführen
  4. SQL Server starten: net start MSSQLSERVER
  5. Ihr SQL Server wird jetzt im Einzelbenutzermodus ausgeführt und ermöglicht es jedem Mitglied der lokalen Administratorgruppe (oder dem integrierten Windows-Administrator), mit Systemadministratorrechten eine Verbindung zur SQL Server-Instanz herzustellen;
  6. Öffnen Sie das SQL Server Management Studio (SSMS) und stellen Sie mit einem Konto, das Mitglied der lokalen Administratorgruppe ist, eine Verbindung zum SQL Server-Datenbankmodul her; Stellen Sie über SQL Server Management Studio eine Verbindung mit SQL Server im Einzelbenutzermodus her
  7. Gehen Sie zu Sicherheit -> Anmeldungen und suchen Sie den sa-Benutzer. Der sa-Benutzer ist standardmäßig deaktiviert; Der sa-Benutzer ist in MS SQL Server standardmäßig deaktiviert
  8. Öffnen Sie die Eigenschaften, wechseln Sie zur Registerkarte Allgemein und legen Sie ein neues SA-Kennwort fest. Aktivieren Sie dann dieses Konto auf der Registerkarte Status (Login -> Aktiviert); SQL Server: SA-Kennwort zurücksetzen
  9. Um eine Verbindung zu MSSQL unter lokalen SQL-Konten (einschließlich sa) herzustellen, müssen Sie den SQL Server- und Windows-Authentifizierungsmodus in den Servereigenschaften auf der Registerkarte Sicherheit aktivieren. Andernfalls wird beim Herstellen einer Verbindung unter dem lokalen sa-Konto ein Fehler angezeigt:
    Login failed for user 'sa'. (Microsoft SQL Server, Error: 18456)

    Aktivieren der Authentifizierung im Server- und Windows-Authentifizierungsmodus unter MSSQL

  10. Außerdem können Sie im Abschnitt Anmeldungen die erforderlichen Windows-Benutzer (lokal oder Domäne) hinzufügen und ihm einen Sysadmin-Tole zuweisen (auf der Registerkarte Serverrollen). Sie können dem Benutzer auch eine Rolle über die sqlcmd-CLI hinzufügen:
    EXEC sp_addsrvrolemember 'DOMAIN\Username', 'sysadmin';)
    GO

     erteilen Sie dem Windows-Benutzer die Rolle sql Server sysadmin
  11. Es bleibt übrig, den MSSQL-Dienst erneut zu stoppen und den Anfangswert des ImagePart-Registrierungsparameters zurückzugeben, indem Sie den Schalter „-m“ entfernen (C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\sqlservr.exe" -sMSSQLSERVER);
  12. Starten Sie den SQL Server-Dienst normal;
  13. Sie können jetzt unter dem sa-Konto im SQL Server-Authentifizierungsmodus oder unter dem Windows-Benutzerkonto, dem Sie Sysadmin-Berechtigungen in SQL Server erteilt haben, eine Verbindung zum SQL Server herstellen.
Trinkgeld. Sie können SQL Server im Einzelbenutzermodus mit dem SQL Server-Konfigurations-Manager starten. Wechseln Sie dazu in den Eigenschaften der erforderlichen SQL–Instanz zur Registerkarte Startparameter und fügen Sie die Startoption -m hinzu.

SQL Server-Konfiguration Stratup-Parameter hinzufügen

Sie können auch das Befehlszeilentool sqlcmd verwenden, um das SA-Kennwort zurückzusetzen und den Zugriff auf SQL Server zu gewähren:

  1. Starten Sie SQL Server im Einzelbenutzermodus wie oben beschrieben;
  2. Öffnen Sie die Eingabeaufforderung und stellen Sie eine Verbindung zu Ihrer SQL Server-Instanz her: sqlcmd –S localhost
  3. Führen Sie die folgenden T-SQL-Befehle aus, um das SA-Benutzerkennwort zu ändern und zu aktivieren:
    ALTER LOGIN sa enable
    GO
    ALTER LOGIN sa WITH PASSWORD = 'new_sa_pass331'
    GO
  4. Verwenden Sie die folgenden Befehle, um Sysadmin-Berechtigungen in MSSQL für ein Windows-Konto (in diesem Beispiel lokaler Benutzer) zu erteilen:
    CREATE LOGIN FROM WINDOWS
    GO
    ALTER SERVER ROLE sysadmin ADD MEMBER
    GO

In diesem Artikel haben wir gezeigt, wie Sie den Zugriff auf SQL Server im Einzelbenutzermodus wiederherstellen können. In diesem Modus können Sie das sa-Kennwort (und andere SQL-Benutzer) zurücksetzen oder Windows-Benutzerkonten SQL-Administratorberechtigungen erteilen. Der Einzelbenutzermodus kann auch zum Wiederherstellen der temdb-Datenbank in MSSQL Server verwendet werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.