Starten, Beenden, Anhalten, Fortsetzen und Neustarten von SQL Server-Diensten

Gilt für: SQL Server - nur Windows

In diesem Artikel wird beschrieben, wie Sie unter Windows die SQL Server-Datenbank-Engine, den SQL Server-Agent oder den SQL Server-Browser-Dienst mithilfe des SQL Server-Konfigurations-Managers, mit SQL Server Management Studio (SSMS), mit net-Befehlen über eine Eingabeaufforderung, mithilfe von Transact-SQL oder mit PowerShell starten, beenden, anhalten, fortsetzen und neu starteen.

Entsprechende Informationen für SQL Server für Linux finden Sie unter Starten, Beenden und Neustarten von SQL Server-Diensten unter Linux.

Informationen zum Dienst

SQL Server-Komponenten sind ausführbare Programme, die als Windows-Dienste ausgeführt werden. Windows-Dienste können ohne Anzeige von Aktivitäten auf dem Computerbildschirm und ohne Benutzerinteraktion in der Befehlszeile ausgeführt werden.

Dienst Beschreibung
Datenbank-Engine-Dienst Bei der Datenbank-Engine-Dienst kann es sich um die Standardinstanz (max. eine pro Computer) oder eine von vielen benannten Instanzen auf dem Computer handeln. Verwenden Sie den SQL Server-Konfigurations-Manager, um zu ermitteln, welche Instanzen der Datenbank-Engine auf dem Computer installiert sind. Die Standardinstanz wird im Fall der Installation als SQL Server (MSSQLSERVER) aufgeführt. Benannte Instanzen (sofern installiert) werden als SQL Server (<Instanzname>) aufgelistet. Standardmäßig wird SQL Server Express als SQL Server (SQLEXPRESS) installiert.
SQL-Server-Agent-Dienst Der SQL Server-Agent-Dienst führt geplante administrative Tasks aus, die als Aufträge und Warnungen bezeichnet werden. Weitere Informationen finden Sie unter SQL Server Agent. Der SQL Server-Agent ist nicht in jeder Edition von SQL Server verfügbar. Eine Liste der Funktionen, die von den SQL Server-Editionen unterstützt werden, finden Sie unter Editionen und unterstützte Funktionen von SQL Server 2022.
SQL Server-Browserdienst Der SQL Server-Browser-Dienst lauscht auf eingehende Anforderungen für SQL Server-Ressourcen und stellt Clients Informationen zu den auf dem Computer installierten SQL Server-Instanzen bereit. Eine einzelne Instanz des SQL Server-Browserdiensts wird für alle auf dem Computer installierten SQL Server-Instanzen verwendet.

Wenn Sie den Datenbank-Engine-Dienst anhalten, können Benutzer, die bereits verbunden sind, weiterhin arbeiten, bis ihre Verbindungen unterbrochen werden. Neue Benutzer können jedoch keine Verbindung mit der Datenbank-Engine herstellen. Verwenden Sie Anhalten, wenn Sie warten möchten, bis Benutzer ihre Arbeit abgeschlossen haben, bevor Sie den Dienst beenden, sodass sie gerade ausgeführte Transaktionen abschließen können. Mit der Funktion zum Fortsetzen kann die Datenbank-Engine neue Verbindungen wieder zulassen. Der SQL Server-Agent-Dienst kann nicht angehalten oder fortgesetzt werden.

Der SQL Server-Konfigurations-Manager und SSMS zeigen den aktuellen Dienststatus an. Dazu werden folgende Symbole verwendet.

SQL Server-Konfigurations-Manager SQL Server Management Studio (SSMS)
Started Ein grüner Pfeil in dem Symbol neben dem Dienstnamen Ein weißer Pfeil in dem Symbol neben dem Dienstnamen
Beendet Ein rotes Quadrat in dem Symbol neben dem Dienstnamen Ein weißes Quadrat in einem roten Kreissymbol neben dem Dienstnamen
Angehalten Zwei vertikale blaue Linien im Symbol neben dem Dienstnamen Zwei vertikale weiße Linien in einem blauen Kreissymbol neben dem Dienstnamen
Neustarten Ein rotes Quadrat weist darauf hin, dass der Dienst beendet wurde. Ein grüner Pfeil gibt daraufhin an, dass der Dienst erfolgreich gestartet wurde. Keine

Sie haben je nach Status des Diensts keinen Zugriff auf alle möglichen Optionen, wenn Sie SQL Server-Konfigurations-Manager oder SSMS verwenden. Wurde der Dienst beispielsweise bereits gestartet, ist die Option Start nicht verfügbar.

Im Fall der Ausführung auf einem Cluster lässt sich der SQL Server-Datenbank-Engine-Dienst am besten mittels Clusterverwaltung verwalten.

Berechtigungen

Standardmäßig können nur Mitglieder der lokalen Administratorgruppe einen Dienst starten, beenden, anhalten, fortsetzen oder neu starten. Informationen dazu, wie Sie es Nichtadministratoren ermöglichen, Dienste zu verwalten, finden Sie unter How to grant users rights to manage services (So erteilen Sie Benutzern die Berechtigung zum Verwalten von Diensten). (Dieser Vorgang ist bei anderen Versionen von Windows Server ähnlich.)

Das Beenden der Datenbank-Engine unter Verwendung des Transact-SQL-SHUTDOWN-Befehls erfordert die Mitgliedschaft in den festen Serverrollen sysadmin oder serveradmin. Diese Mitgliedschaft ist nicht übertragbar.

SQL Server-Konfigurations-Manager

Der SQL Server-Konfigurations-Manager ein Snap-In für das Microsoft Management Console-Programm und wird in neueren Versionen von Windows möglicherweise nicht als Anwendung angezeigt. Weitere Informationen finden Sie unter SQL Server Configuration Manager.

Starten des SQL Server-Konfigurations-Managers

Wählen Sie im Menü Start die Option Alle Programme > Microsoft SQL Server > Konfigurationstools > SQL Server-Konfigurations-Manager aus.

Starten, Beenden, Anhalten, Fortsetzen und Neustarten einer Instanz der SQL Server-Datenbank-Engine

  1. Starten Sie SQL Server-Konfigurations-Manager mithilfe der Anweisungen aus dem vorherigen Abschnitt.

  2. Wenn das Dialogfeld Benutzerkontensteuerung angezeigt wird, wählen Sie Ja aus.

  3. Wählen Sie im linken Bereich des SQL Server-Konfigurations-Managers SQL Server-Dienste aus.

  4. Klicken Sie im Ergebnisbereich mit der rechten Maustaste auf SQL Server (MSSQLServer) oder auf eine benannte Instanz, und wählen Sie anschließend Starten, Beenden, Anhalten, Fortsetzen oder Neu starten aus.

  5. Wählen Sie OK aus, um den SQL Server-Konfigurations-Manager zu schließen.

Weitere Informationen zum Starten einer Instanz der Datenbank-Engine mit Startoptionen finden Sie unter SQL Server-Konfigurations-Manager: Konfigurieren der Serverstartoptionen.

Wichtig

Wenn Sie ab SQL Server 2022 (16.x) den Startmodus für einen SQL Server-Dienst im Konfigurations-Manager auf Automatisch festlegen, wird der Dienst stattdessen im Modus Automatisch (verzögerter Start) gestartet, obwohl der Startmodus als Automatisch angezeigt wird.

Starten, Beenden, Anhalten, Fortsetzen oder Neustarten des SQL Server-Browsers oder einer Instanz des SQL Server-Agents

  1. Starten Sie SQL Server-Konfigurations-Manager mithilfe der Anweisungen aus dem vorherigen Abschnitt.

  2. Wenn das Dialogfeld Benutzerkontensteuerung angezeigt wird, wählen Sie Ja aus.

  3. Wählen Sie im linken Bereich des SQL Server-Konfigurations-Managers SQL Server-Dienste aus.

  4. Klicken Sie im Ergebnisbereich mit der rechten Maustaste auf SQL Server-Browser oder SQL Server-Agent (MSSQLServer) oder für eine benannte Instanz auf SQL Server-Agent (<InstanzName>), und wählen Sie dann Starten, Beenden, Anhalten, Fortsetzen oder Neu starten aus.

  5. Wählen Sie OK aus, um den SQL Server-Konfigurations-Manager zu schließen.

Hinweis

Der SQL Server-Agent kann nicht angehalten werden.

SQL Server Management Studio

Verwenden Sie SQL Server Management Studio zum Verwalten der SQL Server-Datenbank-Engine-Dienste.

Starten, Beenden, Anhalten, Fortsetzen und Neustarten einer Instanz der Datenbank-Engine

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit der Datenbank-Engine-Instanz her, klicken Sie mit der rechten Maustaste auf die zu startende Datenbank-Engine-Instanz, und wählen Sie dann Starten, Beenden, Anhalten, Fortsetzen oder Neu starten aus.

    Klicken Sie alternativ im Bereich „Registrierte Server“ mit der rechten Maustaste auf die zu startende Datenbank-Engine-Instanz, zeigen Sie auf die Option Dienstkontrolle, und wählen Sie dann Starten, Beenden, Anhalten, Fortsetzen oder Neu starten aus.

  2. Wenn das Dialogfeld Benutzerkontensteuerung angezeigt wird, wählen Sie Ja aus.

  3. Wenn Sie gefragt werden, ob Sie eine Aktion ausführen möchten, wählen Sie Ja aus.

Starten, Beenden oder Neustarten einer SQL Server-Agent-Instanz

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit der Datenbank-Engine-Instanz her, klicken Sie mit der rechten Maustaste auf SQL Server-Agent, und wählen Sie dann Starten, Beenden oder Neu starten aus.

  2. Wenn das Dialogfeld Benutzerkontensteuerung angezeigt wird, wählen Sie Ja aus.

  3. Wenn Sie gefragt werden, ob Sie eine Aktion ausführen möchten, wählen Sie Ja aus.

Eingabeaufforderungsfenster und Verwenden von net-Befehlen

Die SQL Server-Dienste können mithilfe von net-Befehlen von Windows gestartet, beendet oder angehalten werden.

Starten der Standardinstanz der Datenbank-Engine

Geben Sie an einer Eingabeaufforderung einen der folgenden Befehle ein:

net start "SQL Server (MSSQLSERVER)"

Oder

net start MSSQLSERVER

Starten einer benannten Instanz der Datenbank-Engine

Geben Sie an einer Eingabeaufforderung einen der folgenden Befehle ein. Ersetzen Sie <Instanzname> durch den Namen der Instanz, die Sie verwalten möchten.

net start "SQL Server (instancename)"

Oder

net start MSSQL$instancename

Starten der Datenbank-Engine mit Startoptionen

Fügen Sie Startoptionen am Ende der net start "SQL Server (MSSQLSERVER)"-Anweisung (getrennt durch ein Leerzeichen) hinzu. Beim Starten mithilfe von net start wird ein Schrägstrich (/) anstelle eines Bindestrichs (-) für die Startoptionen verwendet.

net start "SQL Server (MSSQLSERVER)" /f /m

Oder

net start MSSQLSERVER /f /m

Hinweis

Weitere Informationen zu den Startoptionen finden Sie unter Startoptionen für den Datenbank-Engine-Dienst.

Starten des SQL Server-Agents auf der Standardinstanz von SQL Server

Geben Sie an einer Eingabeaufforderung einen der folgenden Befehle ein:

net start "SQL Server Agent (MSSQLSERVER)"

Oder

net start SQLSERVERAGENT

Starten des SQL Server-Agents auf einer benannten Instanz von SQL Server

Geben Sie an einer Eingabeaufforderung einen der folgenden Befehle ein. Ersetzen Sie Instanzname durch den Namen der Instanz, die Sie verwalten möchten.

net start "SQL Server Agent (instancename)"

Oder

net start SQLAgent$instancename

Informationen zum Ausführen des SQL Server-Agents im ausführlichen Modus zur Problembehandlung finden Sie unter sqlagent90 (Anwendung).

Starten des SQL Server-Browsers

Geben Sie an einer Eingabeaufforderung einen der folgenden Befehle ein:

net start "SQL Server Browser"

Oder

net start SQLBrowser

Anhalten oder Beenden von Diensten über das Eingabeaufforderungsfenster

Ändern Sie zum Anhalten oder Beenden von Diensten die Befehle wie folgt.

  • Um einen Dienst anzuhalten, ersetzen Sie net start durch net pause.
  • Um einen Dienst zu beenden, ersetzen Sie net start durch net stop.

Transact-SQL

Die Datenbank-Engine lässt sich mit der SHUTDOWN-Anweisung beenden.

Beenden der Datenbank-Engine mithilfe von Transact-SQL

  • Führen Sie die folgende Anweisung aus, um die Datenbank-Engine nach der vollständigen Ausführung der Transact-SQL-Anweisungen und gespeicherten Prozeduren zu beenden.

    SHUTDOWN;
    
  • Führen Sie die folgende Anweisung aus, um die Datenbank-Engine sofort zu beenden.

    SHUTDOWN WITH NOWAIT;
    

Weitere Informationen zur SHUTDOWN-Anweisung finden Sie unter SHUTDOWN.

PowerShell

Sie können die SQL Server-Datenbank-Engine-Dienste mithilfe von PowerShell verwalten.

Starten und Beenden von Datenbank-Engine-Diensten

  1. Führen Sie an einer SQL Server PowerShell-Eingabeaufforderung den folgenden Befehl aus. Ersetzen Sie computername durch den Namen des Computers.

    # Get a reference to the ManagedComputer class.
    CD SQLSERVER:\SQL\computername
    $Wmi = (get-item .).ManagedComputer
    
  2. Identifizieren Sie den Dienst, den Sie beenden oder starten möchten. Wählen Sie eine der folgenden Zeilen aus. Ersetzen Sie instancename durch den Namen der benannten Instanz.

    • Abrufen eines Verweises auf die Standardinstanz der Datenbank-Engine

      $DfltInstance = $Wmi.Services['MSSQLSERVER']
      
    • Abrufen eines Verweises auf die benannte Instanz der Datenbank-Engine

      $DfltInstance = $Wmi.Services['MSSQL$instancename']
      
    • Abrufen eines Verweises auf den SQL Server-Agent-Dienst auf der Standardinstanz der Datenbank-Engine

      $DfltInstance = $Wmi.Services['SQLSERVERAGENT']
      
    • Abrufen eines Verweises auf den SQL Server-Agent-Dienst auf einer benannten Instanz der Datenbank-Engine

      $DfltInstance = $Wmi.Services['SQLAGENT$instancename']
      
    • Abrufen eines Verweises auf den SQL Server-Browserdienst

      $DfltInstance = $Wmi.Services['SQLBROWSER']
      
  3. Starten Sie anhand des Beispiels den ausgewählten Dienst, und beenden Sie ihn anschließend.

    # Display the state of the service.
    $DfltInstance
    # Start the service.
    $DfltInstance.Start();
    # Wait until the service has time to start.
    # Refresh the cache.
    $DfltInstance.Refresh();
    # Display the state of the service.
    $DfltInstance
    # Stop the service.
    $DfltInstance.Stop();
    # Wait until the service has time to stop.
    # Refresh the cache.
    $DfltInstance.Refresh();
    # Display the state of the service.
    $DfltInstance
    

Überprüfen und Aktivieren deaktivierter Instanzen

Mithilfe der folgenden Schritte können Sie ermitteln, ob eine SQL Server-Dienstinstanz deaktiviert ist:

  1. Bestimmen Sie den zu überprüfenden Dienst anhand der Informationen aus dem Abschnitt Starten, Beenden, Anhalten, Fortsetzen und Neustarten von SQL Server-Diensten.

  2. Wählen Sie in SQL Server-Konfigurations-Manager die Option SQL Server-Dienste aus, und suchen Sie den gewünschten Dienst.

  3. Wenn der Wert der Spalte Startmodus auf Andere (Boot, System, deaktiviert oder unbekannt). festgelegt ist, bedeutet das in der Regel, dass der entsprechende Dienst deaktiviert ist. Befolgen Sie diese Schritte, um den Dienst zu aktivieren:

    1. Klicken Sie in der Spalte „Name“ mit der rechten Maustaste auf den entsprechenden Dienst, und wechseln Sie dann im Fenster <Dienstname> Eigenschaften zur Registerkarte Dienst.

    2. Überprüfen Sie den Wert in der Spalte Startmodus, und vergewissern Sie sich, dass er auf Deaktiviert festgelegt ist.

    3. Ändern Sie den Wert je nach Anforderungen entweder in Manuell oder Automatisch. Weitere Informationen finden Sie unter SQL Server-Konfigurations-Manager: Konfigurieren von Serverstartoptionen.

Verwenden der ServiceController-Klasse

Sie können die ServiceController-Klasse zur Programmsteuerung des SQL Server-Diensts oder eines anderen Windows-Diensts verwenden. Ein Beispiel für die Verwendung von C# finden Sie unter ServiceController-Klasse.

Behandeln von Problemen beim Starten des Diensts

Wenn Sie versuchen, SQL Server-Dienste zu starten, werden diese möglicherweise nicht gestartet, wenn ein Konfigurationsproblem vorliegt. Sie können die dienstspezifischen Protokolle überprüfen, um das Problem zu identifizieren und zu beheben. Ausführliche Schritte zur Problembehandlung und Lösungen für bestimmte Probleme finden Sie in den folgenden Artikeln: