MS SQL SA User Passwort wiederherstellen

October 29, 2018 in windows ‐ 3 min read

Bevor Ihr irgendwelche Änderungen an einem Server macht, legt bitte ein Backup an. Falls es sich um eine VM handelt, empfehle ich diese Methode zuerst mit einem Klon der Produktiv VM zu testen.

Ladet euch vorher allerdings die PS Tools herunter, Ihr werdet sie brauchen.

Meldet euch als DomAdmin auf dem SQL Server an und legt euch einen lokalen Administrator an.

net user restoresql /add net localgroup Administratoren /ADD

Achtet hier darauf, dass der Gruppenname je nach lokalisierung abweichen kann. Ihr könnt natürlich auch das MMC Snap-In lokale Benutzer und Gruppen verwenden.

Als nächstes starten wir den SQL Server Manager und verbinden uns per Windows-Authentifizierung.

Macht jetzt einen Rechtsklick auf SQL Instanz > Sicherheit > Anmeldung und wählt Neue Anmeldung… Wählt euren frisch erstellten lokalen administrator aus und fügt ihn hinzu.

Versucht nicht, dem Account an dieser Stelle mehr Rechte zu geben, euch fehlen dafür die Berechtigungen.

image

Meldet euch anschließend ab und mit diesem lokalen administrator an.

Wechselt dann in den Ordner C:\Windows\SysWOW64\SQLServer und führt darin die SQLServerManagerXX.msc aus. Der Dateiname des Snap-Ins hängt von der Installierten SQL Version ab.

image

Wählt die SQL Instanz aus zu der Ihr kein SA Passwort habt, stoppt Sie und geht dann auf Eigenschaften.

image

Hier hinterlegen wir dann den Startparameter -m, was die Instanz in den Single User Modus versetzt. Startet die SQL Instanz anschließend wieder so, wie ihr sie gestoppt habt.

image

Jetzt müssen wir eine den SQL Server Manager mit einer Windows Authentifizierung als NT-AUTORITÄT\SYSTEM starten. Hier kommen die eingangs erwähnten PS Tools zum Einsatz.

Schaut euch an, auf welche Datei die Verknüpfung pointed und kopiert euch den Pfad.

image

Startet eine administrative CMD und wechselt in den Ordner der PS Tools. Hier führt ihr dann die psexec.exe mit den Paramtern -i und -s “Pfad zur Ssms.exe” aus.

Das sieht dann etwa so aus, je nachdem welche MS SQL Version ihr habt.

psexec.exe -i -s "C:\Program Files (x86)\Microsoft SQL Server\140\Tools\ManagementStudio\Ssms.exe"

image

Jetzt wird das SQL Management Studio im Kontext von NT-AUTHORITÄT\SYSTEM ausgeführt und Ihr könnt eine Windows Authentifizierung durchführen.

image

Euch sollte auffallen, dass Ihr jetzt wesentlich mehr Accounts unter Anmeldungen sehen könnt als zuvor. Meinem Verständnis nach, solltet Ihr jetzt schon in der Lage sein das SA Passwort zurückzusetzen. Da es bei mir nicht funktioniert hat, bin noch noch die extra Meile über den lokalen admin gegangen.

Geht auf den restoresql user, Rechtsklick > Eigentschaften > Serverrollen und gebt ihm mindestens das recht sysadmin.

image

Geht dann auf Datei > Alles speichern und beendet das SQL Server Management Studio.

image

Jetzt zurück in den SQL Server Configuration Manager > den SQL Server stoppen > den Parameter -m entfernen und den Server wieder Starten. Die Screenshots spare ich mir. Startet dann das SQL Server Management Studio wieder mit der Windows Authentifizierung als lokaler Administrator.

image

Ihr könnt jetzt das Passwort des SA Users ändern.

image

Alles speichern nicht vergessen, und als SA User anmelden.

image

Und schon seid ihr SA.

image

Ich hoffe, dass das mal jemandem helfen kann.

 

Cheers, Ori