Herstellen einer Verbindung mit SQL Server, wenn Systemadministratoren gesperrt sind

 

Gilt für: SQL Server 2016

In diesem Thema wird beschrieben, wie Sie als Systemadministrator den Zugriff auf SQL Server-Datenbankmodul wiedererlangen können. Ein Systemadministrator kann aufgrund einer der folgenden Ursachen Zugriff auf eine Instanz von SQL Server verlieren:

  • Alle Anmeldedaten, die Mitglieder der festen Serverrolle sysadmin sind, wurden versehentlich entfernt.

  • Alle Windows-Gruppen, die Mitglieder der festen Serverrolle sysadmin sind, wurden versehentlich entfernt.

  • Die Anmeldedaten, die Mitglieder der festen Serverrolle sysadmin sind, gehören zu Mitarbeitern, die das Unternehmen verlassen haben oder nicht verfügbar sind.

  • Das sa-Konto wurde deaktiviert, oder das Kennwort ist unbekannt.

Eine Methode zum Wiedererlangen des Zugriffs ist die Neuinstallation von SQL Server und das Anfügen aller Datenbanken an die neue Instanz. Diese Lösung ist zeitaufwändig. Außerdem kann es zum Wiederherstellen der Anmeldedaten erforderlich sein, die Masterdatenbank aus einer Sicherung wiederherzustellen. Je nach Datum der Sicherung der Masterdatenbank sind möglicherweise nicht alle Informationen enthalten. Wenn die Sicherung der Masterdatenbank aktuell ist, sind möglicherweise die gleichen Anmeldedaten wie in der vorherigen Instanz enthalten und die Administratoren sind immer noch gesperrt.

Starten Sie die Instanz von SQL Server im Einzelbenutzermodus mithilfe der Option -m oder der Option -f. Ein beliebiges Mitglied der lokalen Administratorengruppe des Computers kann dann eine Verbindung mit der Instanz von SQL Server als Mitglied der festen Serverrolle sysadmin herstellen.

System_CAPS_ICON_note.jpg Hinweis


Wenn Sie eine Instanz von SQL Server im Einzelbenutzermodus starten, müssen Sie zunächst den SQL Server-Agent-Dienst beenden. Andernfalls stellt der SQL Server-Agent möglicherweise zuerst eine Verbindung her und verhindert, dass Sie als zweiter Benutzer eine Verbindung herstellen können.

Wenn Sie die Option -m mit sqlcmd oder SQL Server Management Studio verwenden, können Sie die Verbindungen auf eine angegebene Clientanwendung beschränken. -m"sqlcmd" beschränkt Verbindungen z.B. auf eine einzelne Verbindung, und diese Verbindung muss sich als sqlcmd-Clientprogramm identifizieren. Verwenden Sie diese Option, wenn Sie SQL Server im Einzelbenutzermodus starten und eine unbekannte Clientanwendung die einzige verfügbare Verbindung belegt. Um die Verbindung über den Abfrage-Editor in Management Studio herzustellen, verwenden Sie -m"Microsoft SQL Server Management Studio - Query".

System_CAPS_ICON_important.jpg Wichtig


Verwenden Sie diese Option nicht als Sicherheitsfunktion. Die Clientanwendung gibt den Clientanwendungsnamen an und kann als Teil der Verbindungszeichenfolge einen falschen Namen angeben.

Schrittanleitungen zum Starten von SQL Server im Einzelbenutzermodus finden Sie unter Konfigurieren von Serverstartoptionen (SQL Server-Konfigurations-Manager).

Im Folgenden wird beschrieben, wie eine Verbindung mit SQL Server 2016 unter Windows 8 (oder höher) hergestellt wird. Auf geringfügige Abweichungen bei früheren Versionen von SQL Server oder Windows wird ggf. hingewiesen. Diese Anweisungen müssen ausgeführt werden, während Sie als Mitglied der lokalen Administratorgruppe bei Windows angemeldet sind. Außerdem wird davon ausgegangen, dass SQL Server Management Studio auf dem Computer installiert ist.

  1. Starten Sie auf der Startseite SQL Server Management Studio. Wählen Sie im Menü Ansicht die Option Registrierte Server aus. (Wenn Ihr Server noch nicht registriert ist, klicken Sie mit der rechten Maustaste auf Lokale Servergruppen, zeigen auf Tasks und klicken dann auf Lokale Server registrieren.)

  2. Klicken Sie im Bereich „Registrierte Server“ mit der rechten Maustaste auf den Server, und klicken Sie dann auf SQL Server-Konfigurations-Manager. Eine Berechtigung zum Ausführen als Administrator sollte angefordert und der Konfigurations-Manager geöffnet werden.

  3. Schließen Sie Management Studio.

  4. Wählen Sie im linken Bereich des SQL Server-Konfigurations-Managers die Option SQL Server-Dienste aus. Suchen Sie im rechten Bereich Ihre SQL Server-Instanz. (Bei der Standardinstanz von SQL Server ist (MSSQLSERVER) nach dem Computernamen angegeben. Benannte Instanzen werden in Großbuchstaben mit demselben Namen wie unter Registrierte Server angezeigt.) Klicken Sie mit der rechten Maustaste auf die SQL Server-Instanz, und klicken Sie dann auf Eigenschaften.

  5. Geben Sie auf der Registerkarte Startparameter im Feld Startparameter angeben die Zeichenfolge -m ein, und klicken Sie dann auf Hinzufügen. (Der Parameter entspricht einem Bindestrich und dem Kleinbuchstaben m.)

    System_CAPS_ICON_note.jpg Hinweis


    Bei einigen früheren SQL Server-Versionen gibt es keine Registerkarte Startparameter. Doppelklicken Sie in diesem Fall auf der Registerkarte Erweitert auf Startparameter. Die Parameter werden in einem sehr kleinen Fenster geöffnet. Achten Sie darauf, die vorhandenen Parameter nicht zu ändern. Fügen Sie ganz unten den neuen Parameter ;-m hinzu, und klicken Sie auf OK. (Der Parameter entspricht einem Semikolon, einem Bindestrich und dem Kleinbuchstaben m.)

  6. Klicken Sie auf OK, klicken Sie nach Ausgabe der Neustartmeldung mit der rechten Maustaste auf den Servernamen, und klicken Sie dann auf Neu starten.

  7. Nachdem SQL Server neu gestartet wurde, befindet sich Ihr Server im Einzelbenutzermodus. Stellen Sie sicher, dass der SQL Server-Agent nicht ausgeführt wird. da er andernfalls Ihre einzige Verbindung belegt.

  8. Klicken Sie im Startbildschirm von Windows 8 mit der rechten Maustaste auf das Symbol für Management Studio. Wählen Sie am unteren Bildschirmrand Als Administrator ausführen aus. (Dadurch werden Ihre Administratoranmeldeinformationen an SSMS übergeben.)

    System_CAPS_ICON_note.jpg Hinweis


    In früheren Windows-Versionen wird die Option Als Administrator ausführen als Untermenü angezeigt.

    In einigen Konfigurationen versucht SSMS, mehrere Verbindungen herzustellen. Mehrere Verbindungen verursachen einen Fehler, da SQL Server im Einzelbenutzermodus ausgeführt wird. Sie können zwischen folgenden Aktionen wählen. Führen Sie einen der folgenden Schritte aus:

    1. Stellen Sie über den Objekt-Explorer unter Verwendung der Windows-Authentifizierung (die Ihre Administratoranmeldeinformationen enthält) eine Verbindung her. Erweitern Sie Sicherheit sowie Anmeldungen, und doppelklicken Sie auf Ihre eigene Anmeldung. Wählen Sie auf der Seite Serverrollen die Option sysadmin aus, und klicken Sie dann auf OK.

    2. Anstatt über den Objekt-Explorer stellen Sie in einem Abfragefenster unter Verwendung der Windows-Authentifizierung (die Ihre Administratoranmeldeinformationen enthält) eine Verbindung her. (Diese Art der Verbindung wird nur unterstützt, wenn sie nicht über den Objekt-Explorer hergestellt wurde.) Führen Sie Code (wie im folgenden Beispiel) aus, um eine neue Anmeldung mit Windows-Authentifizierung hinzuzufügen, die Mitglied der festen Serverrolle sysadmin ist. Im folgenden Beispiel wird ein Domänenbenutzer mit dem Namen CONTOSO\PatK hinzugefügt.

      CREATE LOGIN [CONTOSO\PatK] FROM WINDOWS;  
      ALTER SERVER ROLE sysadmin ADD MEMBER [CONTOSO\PatK];  
      
      
    3. Wenn SQL Server im gemischten Authentifizierungsmodus ausgeführt wird, stellen Sie eine Verbindung in einem Abfragefenster unter Verwendung der Windows-Authentifizierung her (die Ihre Administratoranmeldeinformationen enthält). Führen Sie Code (wie im folgenden Beispiel) aus, um eine neue Anmeldung mit SQL Server-Authentifizierung zu erstellen, die Mitglied der festen Serverrolle sysadmin ist.

      CREATE LOGIN TempLogin WITH PASSWORD = '************';  
      ALTER SERVER ROLE sysadmin ADD MEMBER TempLogin;  
      
      
      System_CAPS_ICON_warning.jpg Warnung


      Ersetzen Sie ************ durch ein sicheres Kennwort.

    4. Wenn SQL Server im gemischten Authentifizierungsmodus ausgeführt wird und Sie das Kennwort des sa-Kontos zurücksetzen möchten, stellen Sie unter Verwendung der Windows-Authentifizierung (die Ihre Administratoranmeldeinformationen enthält) eine Verbindung zu einem Abfragefenster her. Ändern Sie das Kennwort des sa-Kontos mit folgender Syntax.

      ALTER LOGIN sa WITH PASSWORD = '************';  
      
      
      System_CAPS_ICON_warning.jpg Warnung


      Ersetzen Sie ************ durch ein sicheres Kennwort.

  9. Mit den folgenden Schritten wird SQL Server jetzt wieder in den Mehrbenutzermodus zurückversetzt. Schließen Sie SSMS.

  10. Wählen Sie im linken Bereich des SQL Server-Konfigurations-Managers die Option SQL Server-Dienste aus. Klicken Sie im rechten Bereich mit der rechten Maustaste auf die Instanz von SQL Server, und klicken Sie dann auf Eigenschaften.

  11. Wählen Sie auf der Registerkarte Startparameter im Feld Vorhandene Parameter den Parameter -m aus, und klicken Sie auf Entfernen.

    System_CAPS_ICON_note.jpg Hinweis


    Bei einigen früheren SQL Server-Versionen gibt es keine Registerkarte Startparameter. Doppelklicken Sie in diesem Fall auf der Registerkarte Erweitert auf Startparameter. Die Parameter werden in einem sehr kleinen Fenster geöffnet. Entfernen Sie den zuvor hinzugefügten Parameter ;-m, und klicken Sie dann auf OK.

  12. Klicken Sie mit der rechten Maustaste auf den Servernamen, und klicken Sie dann auf Neu starten.

Nun sollten Sie in der Lage sein, mit einem der Konten, das jetzt Mitglied der festen Serverrolle sysadmin ist, auf normale Weise eine Verbindung herzustellen.

Starten von SQL Server im Einzelbenutzermodus
Startoptionen für den Datenbankmoduldienst

Community-Beiträge

HINZUFÜGEN
Anzeigen: