Le service SQL Server et le service SQL Server Agent ne démarrent pas sur un serveur autonome
Cet article vous aide à résoudre les problèmes où le service SQL Server et le service SQL Server Agent peuvent ne pas démarrer sur un serveur autonome.
Version du produit d’origine : SQL Server
Numéro de base de connaissances d’origine : 307288
Symptômes
Problème 1 : Sur un serveur autonome, le service MSSQLSERVER peut échouer et vous recevez le message d’erreur suivant :
Erreur 1068 : (Le service de dépendance ou le groupe n’a pas pu démarrer.) s’est produite lors de l’exécution de cette opération de service sur le service MSSQLServer.
Problème 2 : De même, le service SQLServerAgent peut également échouer et vous recevez le message d’erreur suivant :
Erreur 1068 : (Le service de dépendance ou le groupe n’a pas pu démarrer.) s’est produite lors de l’exécution de cette opération de service sur le service SQLServerAgent.
Le problème 1 et le problème 2 se produisent lorsque les deux conditions suivantes sont remplies :
- L’ordinateur serveur se trouve dans un groupe de travail et ne fait pas partie d’un domaine.
- Les services MSSQLSERVER et SQLServerAgent sont définis pour utiliser un compte de domaine pour le démarrage.
Problème 3 : Sur un serveur membre de domaine, le service MSSQLSERVER peut ne pas démarrer pendant le démarrage du serveur et vous recevez le message suivant dans l’Observateur d’événements avec l’ID d’événement 7038 :
Le service MSSQLSERVER n’a pas pu se connecter en tant que domaine\mssqlsvc avec le mot de passe actuellement configuré en raison de l’erreur suivante : Source : Description de NetLogon : Il n’existe actuellement aucun serveur d’ouverture de session disponible pour le service de la demande d’ouverture de session. Le service MSSQLSERVER s’est arrêté de façon inattendue.
Ce problème se produit lorsque toutes les conditions suivantes sont remplies :
- Le serveur fait partie d’un domaine.
- Les services MSSQLSERVER et SQLServerAgent sont définis pour utiliser un compte de domaine pour le démarrage.
- Le mode de démarrage pour MSSQLSERVER et SQLServerAgent est défini sur Automatique.
Cause
Le problème 1 et le problème 2 se produisent car le serveur est un ordinateur autonome, le service NetLogon ne démarre pas sur le serveur. Par conséquent, aucune authentification à l’échelle du domaine n’est possible.
Le problème 3 se produit car les services SQL Server tentent de démarrer avant le démarrage du service NetLogon.
Résolution
Pour résoudre le problème 1 et le problème 2, procédez comme suit :
Modifiez le compte de démarrage de MSSQLSERVER et SQLServerAgent pour utiliser le compte système local.
Redémarrez le serveur.
Pour résoudre le problème 3, utilisez les solutions de contournement suivantes :
Configurez le démarrage de SQL Server pour qu’il démarre plus tard pour des serveurs Windows particuliers, d’autres services Windows tels que NetLogon se terminent en premier et SQL Server démarre sans problème.
Configurez le démarrage de SQL Server pour réessayer, le démarrage peut être terminé lors de la deuxième tentative de démarrage.
Définissez la valeur de détection d’adresse dupliquée (-DadTransmits) sur 1 pour toutes les interfaces réseau sur le serveur. Pour plus d’informations, consultez la commande Set-NetIPInterface .
Modifiez les options de récupération pour les services SQL Server et SQL Server Agent. Spécifiez Redémarrer le service en tant qu’action pour les options d’échec. Vous pouvez exécuter cette option à partir de l’applet Services des outils d’administration en utilisant les interfaces familières du gestionnaire de contrôle des services.
Si l’option de démarrage retardée ne peut pas résoudre ce problème 3, vous pouvez ajouter les dépendances suivantes au service SQL Server :
- Service d’assistance IP
- Service serveur
- Service de liste réseau
Vous pouvez ajouter les dépendances à l’aide de la commande suivante :
sc.exe qc MSSQLSERVER ::view dependencies sc.exe config MSSQLSERVER depend=iphlpsvc/LanmanServer/netprofm ::add service dependencies
Plus d’informations
Sur un ordinateur autonome, le service NetLogon doit être défini pour le démarrage manuel .