Démarrage, arrêt, mise en pause, reprise et redémarrage des services SQL Server

S’applique à : SQL Server - Windows uniquement

Cet article explique comment démarrer, arrêter, suspendre, reprendre ou redémarrer le moteur de base de données SQL Server, SQL Server Agent ou le service SQL Server Browser à l’aide du Gestionnaire de configuration SQL Server sur Windows, de SQL Server Management Studio (SSMS), des commandes net d’une invite de commandes, de Transact-SQL ou de PowerShell.

Pour SQL Server sur Linux, consultez Démarrage, arrêt et redémarrage des services SQL Server sur Linux.

Identifier le service

Les composants SQL Server sont des programmes exécutables qui s’exécutent en tant que services Windows. Les services Windows peuvent s’exécuter sans afficher d’activité sur l’écran de l’ordinateur et sans intervention de l’utilisateur en ligne de commande.

Service Description
Service Moteur de base de données Le service Moteur de base de données peut être l’instance par défaut (avec une limite d’une par ordinateur) ou l’une des nombreuses instances nommées sur l’ordinateur. Utilisez le Gestionnaire de configuration SQL Server pour identifier les instances du moteur de base de données qui sont installées sur l’ordinateur. L’instance par défaut (si vous l’installez) est listée comme SQL Server (MSSQLSERVER) . Les instances nommées (si vous les installez) sont listées comme SQL Server (<nom_instance>). Par défaut, SQL Server Express est installé comme SQL Server (SQLEXPRESS) .
Service SQL Server Agent Le service SQL Server Agent exécute des tâches administratives planifiées, appelées travaux et alertes. Pour plus d’informations, consultez SQL Server Agent. SQL Server Agent n’est pas disponible dans toutes les éditions de SQL Server. Pour obtenir la liste des fonctionnalités prises en charge par les éditions de SQL Server, consultez Éditions et fonctionnalités prises en charge de SQL Server 2022.
Service SQL Server Browser Le service SQL Server Browser écoute les demandes entrantes de ressources SQL Server et fournit aux clients des informations sur les instances SQL Server installées sur l’ordinateur. Une seule instance du service SQL Server Browser est utilisée par toutes les instances de SQL Server installées sur l’ordinateur.

Si vous suspendez le service Moteur de base de données, les utilisateurs qui sont déjà connectés peuvent continuer à travailler jusqu’à ce que leurs connexions soient interrompues. Les nouveaux utilisateurs, eux, ne peuvent pas se connecter au moteur de base de données. Utilisez Suspendre lorsque vous souhaitez attendre que les utilisateurs terminent les transactions en cours avant d’arrêter le service. Reprendre permet au moteur de base de données d’accepter à nouveau de nouvelles connexions. Le service SQL Server Agent ne peut pas être suspendu ni repris.

Le Gestionnaire de configuration SQL Server et SSMS indiquent l’état actuel des services avec les icônes suivantes.

Gestionnaire de configuration SQL Server SQL Server Management Studio (SSMS)
Get Started with Custom Speech Service (Prise en main de Custom Speech Service) Une flèche verte sur l’icône située à côté du nom du service Une flèche blanche sur l’icône de cercle vert située à côté du nom du service
Arrêté Un carré rouge sur l’icône située à côté du nom du service Un carré blanc sur l’icône de cercle rouge située à côté du nom du service
En pause Deux lignes bleues verticales sur l’icône située à côté du nom du service Deux lignes blanches verticales sur l’icône de cercle bleue située à côté du nom du service
Redémarrage Un carré rouge (le service s’est arrêté), puis une flèche verte (le service a démarré) Aucune

Vous n’avez pas accès à toutes les options possibles lorsque vous utilisez le Gestionnaire de configuration SQL Server ou SSMS, en fonction de l’état du service. Par exemple, si le service est déjà démarré, Démarrer n’est pas disponible.

Lors de l’exécution sur un cluster, le service Moteur de base de données SQL Server est mieux géré à l’aide de l’Administrateur de cluster.

Autorisations

Par défaut, seuls les membres du groupe Administrateurs local peuvent démarrer, arrêter, suspendre, reprendre et redémarrer un service. Pour accorder aux non-administrateurs la capacité de gérer des services, consultez Comment accorder aux utilisateurs des droits de gestion des services. (Le processus est semblable sur d’autres versions de Windows Server.)

L’arrêt du moteur de base de données en utilisant la commande Transact-SQL SHUTDOWN nécessite l’appartenance aux rôles serveur fixes sysadmin ou serveradmin, et n’est pas transférable.

Gestionnaire de configuration SQL Server

Le Gestionnaire de configuration SQL Server est un composant logiciel enfichable pour le programme Microsoft Management Console. Il pourrait donc ne pas s’afficher comme application dans certaines versions de Windows. Pour plus d'informations, consultez SQL Server Configuration Manager.

Démarrage du Gestionnaire de configuration SQL Server

Depuis le menu Démarrer, sélectionnez Tous les programmes > Microsoft SQL Server > Outils de configuration > Gestionnaire de configuration SQL Server.

Démarrer, arrêter, suspendre, reprendre ou redémarrer une instance du moteur de base de données SQL Server

  1. Démarrez le Gestionnaire de configuration SQL Server en suivant les instructions de la section précédente.

  2. Si la boîte de dialogue Contrôle de compte d’utilisateur s’affiche, sélectionnez Oui.

  3. Dans le volet gauche du Gestionnaire de configuration SQL Server, sélectionnez Services SQL Server.

  4. Dans le volet de résultats, cliquez avec le bouton droit sur SQL Server (MSSQLServer) ou sur une instance nommée, puis sélectionnez Démarrer, Arrêter, Suspendre, Reprendre ou Redémarrer.

  5. Sélectionnez OK pour fermer le Gestionnaire de configuration SQL Server.

Pour démarrer une instance du moteur de base de données avec les options de démarrage, consultez Gestionnaire de configuration SQL Server : Configurer les options de démarrage de serveur.

Important

À compter de SQL Server 2022 (16.x), quand vous définissez le Mode de démarrage d’un service SQL Server sur Automatique dans le Gestionnaire de configuration, le service démarre à la place en mode Automatique (Démarrage différé), même si le Mode de démarrage apparaît comme étant Automatique.

Démarrage, arrêt, mise en pause, reprise et redémarrage de SQL Server Browser ou d’une instance de SQL Server Agent

  1. Démarrez le Gestionnaire de configuration SQL Server en suivant les instructions de la section précédente.

  2. Si la boîte de dialogue Contrôle de compte d’utilisateur s’affiche, sélectionnez Oui.

  3. Dans le volet gauche du Gestionnaire de configuration SQL Server, sélectionnez Services SQL Server.

  4. Dans le volet des résultats, cliquez avec le bouton droit sur SQL Server Browser ou SQL Server Agent (MSSQLServer) ou SQL Server Agent (<nom_instance>) pour une instance nommée, puis sélectionnez Démarrer, Arrêter, Suspendre, Reprendre ou Redémarrer.

  5. Sélectionnez OK pour fermer le Gestionnaire de configuration SQL Server.

Notes

SQL Server Agent ne peut pas être suspendu.

SQL Server Management Studio

Utilisez SQL Server Management Studio pour gérer les services de moteur de base de données SQL Server.

Démarrer, arrêter, suspendre, reprendre ou redémarrer une instance du moteur de base de données

  1. Dans l’Explorateur d’objets, connectez-vous à l’instance du moteur de base de données, cliquez avec le bouton droit sur l’instance du moteur de base de données à démarrer, puis sélectionnez Démarrer, Arrêter, Suspendre, Reprendre ou Redémarrer.

    Ou, dans Serveurs inscrits, cliquez avec le bouton droit sur l’instance du moteur de base de données à démarrer, pointez sur Contrôle du service, puis sélectionnez Démarrer, Arrêter, Suspendre, Reprendre ou Redémarrer.

  2. Si la boîte de dialogue Contrôle de compte d’utilisateur s’affiche, sélectionnez Oui.

  3. Quand le système vous demande si vous voulez effectuer une action, sélectionnez Oui.

Démarrage, arrêt et redémarrage d’une instance de SQL Server Agent

  1. Dans l’Explorateur d’objets, connectez-vous à l’instance du moteur de base de données, cliquez avec le bouton droit sur SQL Server Agent, puis sélectionnez Démarrer, Arrêter ou Redémarrer.

  2. Si la boîte de dialogue Contrôle de compte d’utilisateur s’affiche, sélectionnez Oui.

  3. Quand le système vous demande si vous voulez effectuer une action, sélectionnez Oui.

Fenêtre d’invite de commandes avec les commandes net

Les services SQL Server peuvent être démarrés, arrêtés ou suspendus à l’aide des commandes net Windows.

Démarrer l’instance par défaut du moteur de base de données

À partir d'une invite de commandes, entrez l'une des commandes suivantes :

net start "SQL Server (MSSQLSERVER)"

-ou-

net start MSSQLSERVER

Démarrer une instance nommée du moteur de base de données

À partir d'une invite de commandes, entrez l'une des commandes suivantes. Remplacez <nom_instance> par le nom de l’instance à gérer.

net start "SQL Server (instancename)"

-ou-

net start MSSQL$instancename

Démarrer le moteur de base de données avec les options de démarrage

Ajoutez les options de démarrage à la fin de l'instruction net start "SQL Server (MSSQLSERVER)", en les séparant par un espace. Lors d'un démarrage avec l'instruction net start, les options de démarrage utilisent une barre oblique (/) au lieu d'un tiret (-).

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

-ou-

net start MSSQLSERVER /f /m

Notes

Pour plus d’informations sur les options de démarrage, consultez Options de démarrage du service de moteur de base de données.

Démarrer SQL Server Agent sur l’instance par défaut de SQL Server

À partir d'une invite de commandes, entrez l'une des commandes suivantes :

net start "SQL Server Agent (MSSQLSERVER)"

-ou-

net start SQLSERVERAGENT

Démarrer SQL Server Agent sur une instance nommée de SQL Server

À partir d'une invite de commandes, entrez l'une des commandes suivantes. Remplacez nom_instance par le nom de l’instance à gérer.

net start "SQL Server Agent (instancename)"

-ou-

net start SQLAgent$instancename

Pour plus d’informations sur la façon d’exécuter SQL Server Agent en mode détaillé à des fins de résolution des problèmes, consultez Application sqlagent90.

Démarrage de SQL Server Browser

À partir d'une invite de commandes, entrez l'une des commandes suivantes :

net start "SQL Server Browser"

-ou-

net start SQLBrowser

Suspendre ou arrêter des services à partir de la fenêtre d’invite de commandes

Pour suspendre ou arrêter des services, modifiez les commandes des façons suivantes.

  • Pour suspendre un service, remplacez net start par net pause.
  • Pour arrêter un service, remplacez net start par net stop.

Transact-SQL

Le moteur de base de données peut être arrêté à l’aide de l’instruction SHUTDOWN.

Arrêter le moteur de base de données en utilisant Transact-SQL

  • Pour attendre la fin des instructions Transact-SQL et des procédures stockées en cours d’exécution, puis arrêter le moteur de base de données, exécutez l’instruction suivante.

    SHUTDOWN;
    
  • Pour arrêter le moteur de base de données immédiatement, exécutez l’instruction suivante.

    SHUTDOWN WITH NOWAIT;
    

Pour plus d’informations sur l’instruction SHUTDOWN, consultez SHUTDOWN.

PowerShell

Vous pouvez gérer les services de moteur de base de données SQL Server à l’aide de PowerShell.

Démarrer et arrêter des services Moteur de base de données

  1. À l’invite de commandes SQL Server PowerShell, exécutez la commande suivante. Remplacez computername par le nom de votre ordinateur.

    # Get a reference to the ManagedComputer class.
    CD SQLSERVER:\SQL\computername
    $Wmi = (get-item .).ManagedComputer
    
  2. Identifiez le service que vous souhaitez arrêter ou démarrer. Choisissez l'une des lignes suivantes. Remplacez instancename par le nom de l'instance nommée.

    • Pour obtenir une référence à l’instance par défaut du moteur de base de données.

      $DfltInstance = $Wmi.Services['MSSQLSERVER']
      
    • Pour obtenir une référence à une instance nommée du moteur de base de données.

      $DfltInstance = $Wmi.Services['MSSQL$instancename']
      
    • Pour obtenir une référence au service SQL Server Agent sur l’instance par défaut du moteur de base de données.

      $DfltInstance = $Wmi.Services['SQLSERVERAGENT']
      
    • Pour obtenir une référence au service SQL Server Agent sur une instance nommée du moteur de base de données.

      $DfltInstance = $Wmi.Services['SQLAGENT$instancename']
      
    • Pour obtenir une référence au service SQL Server Browser.

      $DfltInstance = $Wmi.Services['SQLBROWSER']
      
  3. Terminez l'exemple pour démarrer, puis arrêter le service sélectionné.

    # 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
    

Vérifier et activer les instances désactivées

Pour déterminer si une instance de service SQL Server est désactivée, procédez comme suit :

  1. Identifiez le service que vous essayez de vérifier à l’aide des informations de la section Démarrage, arrêt, mise en pause, reprise et redémarrage des services SQL Server.

  2. Dans Gestionnaire de configuration SQL Server, sélectionnez Services SQL Server, puis recherchez le service qui vous intéresse.

  3. Si la valeur de la colonne Mode de démarrage est définie sur Autre (Démarrage, Système, Désactivé ou Inconnu), cela signifie généralement que le service correspondant est désactivé. Pour activer le service, procédez comme suit :

    1. Dans la colonne Nom, cliquez avec le bouton droit sur le service correspondant, puis basculez vers l’onglet Service dans la fenêtre <Nom du service> Propriétés.

    2. Vérifiez que la valeur dans la colonne Mode de démarrage est définie sur Désactivé.

    3. Changez la valeur par Manuel ou Automatique en fonction de vos besoins. Pour plus d’informations, consultez Gestionnaire de configuration SQL Server : Configurer les options de démarrage du serveur.

Utilisation de la classe ServiceController

La classe ServiceController vous permet de contrôler le service SQL Server et tout autre service Windows. Pour voir un exemple en C#, consultez Classe ServiceController.

Résoudre des problèmes de démarrage du service

Lorsque vous essayez de démarrer les services SQL Server, ils peuvent ne pas démarrer en cas de problème de configuration. Vous pouvez passer en revue les journaux spécifiques au service pour identifier le problème et le résoudre. Les étapes de dépannage détaillées et la résolution de problèmes spécifiques sont disponibles dans les articles suivants :