Summary: En tant qu'utilisateur de SQL, vous pouvez rencontrer une situation où la tentative de démarrage du serveur SQL entraîne l'erreur SQL 3417. Ce blog traite des différentes occurrences de l'erreur et de leurs causes. Il explore également les solutions de contournement permettant de résoudre l'erreur SQL Server 3417. Vous pouvez résoudre l'erreur manuellement ou en utilisant un outil de réparation SQL.
Parfois, lorsque l’on essaie de démarrer manuellement le service SQL Server, l’erreur SQL Server 3417 peut se produire. Le message d’erreur complet se lit comme suit :
“Windows n’a pas pu démarrer le serveur SQL (MSSQLSERVER) sur l’ordinateur local. Pour plus d’informations, consultez le journal des événements système. S’il s’agit d’un service non Microsoft, contactez le fournisseur du service et reportez-vous au code d’erreur 3417 spécifique au service.”
Avant d’examiner les raisons de l’erreur de service SQL 3417 et les solutions pour y remédier, examinons d’abord quelques instances d’utilisateurs qui signalent cette erreur.
Occurrences de l’erreur SQL 3417
Cas 1 : Dans ce cas, un utilisateur a signalé qu’en déplaçant le dossier : (Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL) vers un autre lecteur, le serveur SQL a cessé de fonctionner. En essayant de le redémarrer, le serveur a affiché un message d’erreur : “Windows n’a pas pu démarrer le serveur SQL (MSSQLSERVER) sur l’ordinateur local. Pour plus d’informations, consultez le journal des événements système. S’il s’agit d’un service non Microsoft, contactez le fournisseur du service et reportez-vous au code d’erreur 3417 spécifique au service“.
Instance 2 : En essayant de se connecter à SQL Server pour exécuter un projet web, un utilisateur a reçu un message d’erreur : “Une erreur liée au réseau ou à l’instance s’est produite lors de l’établissement d’une connexion à SQL Server. Le serveur n’a pas été trouvé ou n’était pas accessible. Vérifiez que le nom de l’instance est correct et que SQL Server est configuré pour autoriser les connexions à distance. (fournisseur : SQL Network Interfaces, error : 40 – Error Locating Server/Instance Specified)“.
L’utilisateur a constaté que SQL Server Express avait cessé de fonctionner dans SQL Server Configuration Manager. Lors de la tentative d’exécution de SQL Server Express, le service n’a pas répondu. Et lorsque l’utilisateur a essayé d’ouvrir services.msc pour démarrer un serveur SQL (instance SQLEXPRESS), il a reçu le message d’erreur “Windows could not start the SQL Server (SQLEXPRESS) on local computer” (Windows n’a pas pu démarrer le serveur SQL (SQLEXPRESS) sur l’ordinateur local) avec le code d’erreur 3417.
Quelle est la cause de l’erreur SQL Server 3417 ?
Vous pouvez rencontrer cette erreur lorsque le serveur SQL ne démarre pas pour l’une des raisons suivantes :
- “La base de données principale ou tempdb ne peut pas être mise en ligne”. Cet événement peut se produire lorsque la base de données est endommagée en raison d’une défaillance matérielle ou logicielle.
- Le dossier contenant les fichiers MDF et NDF est compressé.
- Problème d’autorisation du dossier où se trouve le fichier db.
Conseil : l’erreur 3417 du serveur SQL peut rendre la base de données SQL inaccessible. Bien qu’il existe des solutions manuelles, le dépannage à l’aide de ces solutions peut prendre beaucoup de temps et augmenter le temps d’arrêt de la base de données. Utilisez un outil de réparation SQL pour restaurer la base de données en quelques clics. |
Comment corriger l’erreur SQL Server 3417 ?
Essayez les solutions de contournement suivantes dans l’ordre indiqué ci-dessous pour résoudre l’erreur MS SQL 3417 :
Solution 1 : Décompression du fichier MDF de la base de données SQL
Si vous ne pouvez pas ouvrir la base de données principale, vérifiez si le fichier de la base de données principale (.mdf) est compressé. Si le fichier est compressé, vous devez le décompresser. Pour ce faire, procédez comme suit :
Étape 1 : Parcourez et localisez le dossier de données de Microsoft SQL Server contenant les fichiers db (MDF et NDF).
Note : Vous pouvez localiser le dossier de données du serveur SQL en naviguant dans l’emplacement : “C:\NProgram Files\NMicrosoft SQL Server\NMSSQL.1\NMSSQL\NData”.
Étape 2 : Cliquez avec le bouton droit de la souris sur le dossier de données du serveur SQL. La fenêtre Microsoft SQL Server Properties s’affiche. Cliquez sur Avancé.
Étape 3 : Dans la boîte de dialogue Attributs avancés qui s’affiche, décochez la case Compresser le contenu pour économiser de l’espace disque, puis cliquez sur OK.
Étape 4 : La boîte de dialogue Propriétés de Microsoft SQL Server s’ouvre à nouveau. Cliquez sur le bouton Appliquer, puis sur OK. Lorsque la boîte Confirmer les modifications d’attributs s’affiche, cliquez sur OK.
Étape 5 : Cliquez sur Continuer pour poursuivre.
Étape 6 : Attendez que les changements d’attributs soient terminés. Une fois les modifications appliquées, cliquez sur OK.
Après avoir effectué ces étapes, essayez de redémarrer le service SQL Server. Si l’erreur persiste, passez à la solution suivante.
Solution 2 : Vérifier les autorisations des dossiers
Remarque : cette correction de l’erreur SQL 3417 s’applique aux utilisateurs qui reçoivent l’erreur lors du déplacement d’un dossier vers un autre lecteur.
Assurez-vous que le compte qui exécute le service SQL Server dispose des droits d’accès (autorisations réseau) au dossier contenant les fichiers SQL db. Si ce n’est pas le cas, procédez comme suit pour accorder les droits d’accès au dossier :
Étape 1 : Allez dans le dossier des fichiers SQL et faites un clic droit dessus, puis choisissez Propriétés.
Étape 2 : Dans la boîte de dialogue Propriétés, cliquez sur l’onglet Sécurité.
Étape 3 : Dans la boîte de dialogue qui s’affiche, choisissez le compte Service réseau dans la section Noms de groupe ou d’utilisateur :.
Étape 4 : Cochez la case Contrôle total dans la section Autorisations pour les utilisateurs authentifiés et cliquez sur le bouton OK.
Vérifiez maintenant si l’instance du serveur SQL démarre sans erreur.
Solution 3 : Reconstruction de la base de données principale
Nous pouvons restaurer la base de données principale à partir de la dernière sauvegarde complète de la base de données, mais uniquement si l’instance du serveur SQL est en cours d’exécution. Puisque nous ne pouvons pas démarrer l’instance du serveur, la reconstruction de la base de données principale peut aider à résoudre l’erreur 3417.
Consultez ce lien pour plus d’informations sur la reconstruction de la base de données principale.
Solution 4 : Réparation du fichier MDF
Si la reconstruction de la base de données principale ne permet pas de résoudre l’erreur, il est probable que le fichier de la base de données principale soit gravement corrompu. Dans ce cas, vous pouvez essayer de réparer le fichier MDF corrompu. Pour plus d’informations sur la réparation du fichier MDF, lisez ceci : Réparation du fichier MDF corrompu d’une base de données SQL Server.
Conclusion
Vous pouvez rencontrer l’erreur SQL Server 3417 lorsque vous essayez de démarrer le service SQL Server. L’erreur peut se produire lorsque vous ne pouvez pas mettre en ligne le master ou la tempdb, que le dossier contenant les fichiers de base de données (.mdf ou .ndf) est compressé, ou que vous n’avez pas les droits d’accès sur le dossier. Vous pouvez essayer de résoudre le problème en suivant les solutions manuelles présentées dans cet article. Cependant, le dépannage manuel de l’erreur SQL 3417 peut prendre beaucoup de temps et augmenter les temps d’arrêt de la base de données. Une meilleure approche consiste à utiliser un outil de réparation de base de données SQL spécialisé tel que Stellar Repair for MS SQL pour réparer le fichier MDF et corriger l’erreur.