Comment corriger l'erreur «Une erreur liée au réseau ou spécifique à une instance s'est produite lors de l'établissement d'une connexion à SQL Server»?

«Une erreur liée au réseau ou spécifique à une instance s'est produite lors de l'établissement d'une connexion à SQL Server. Le serveur est introuvable ou inaccessible. Vérifiez que le nom de l'instance est correct et que SQL Server est configuré pour autoriser les connexions à distance. (Fournisseur: fournisseur de canaux nommés, erreur: 40 - Impossible d'ouvrir une connexion à SQL Server) (Microsoft SQL Server, erreur: 53) ».

L'article décrit une liste complète des méthodes de dépannage qui peuvent être utilisées pour se connecter au serveur SQL. Tout d'abord, nous discuterons des problèmes qui surviennent lorsque vous devez vous connecter au serveur distant à l'aide d'une adresse IP, car c'est la cause la plus courante. Ces étapes sont écrites dans « SQL Server 2008 R2» sur « Windows 10» , mais elles peuvent également être utilisées sur d'autres versions avec des modifications mineures.

L'erreur signifie généralement que «le serveur SQL est introuvable» ou « le port TCP est inconnu ou erroné» , ou il peut être bloqué par le «pare-feu».

Méthode 1: Collectez des informations sur l'instance de SQL Server.

Dans cette section, nous discuterons des moyens de vérifier si l'instance de SQL Server fonctionne ou non, ainsi que des méthodes pour le réparer si cela ne fonctionne pas.

Étape 1. Vérifiez si une instance de SQL Server est installée et fonctionne ou non

Tout d'abord, connectez-vous à l'ordinateur hébergeant l'instance de serveur SQL. Maintenant, suivez ces étapes pour ouvrir les services dans Windows.

  1. Cliquez sur le «menu Démarrer» puis pointez sur «Tous les programmes» .
  2. Pointez maintenant sur SQL Server, puis sur «Outils de configuration»
  3. Cliquez sur «SQL Server Configuration Manager» .
  4. Sélectionnez maintenant «Services SQL Server» et vérifiez dans le volet droit si l'instance d'un moteur de base de données est en cours d'exécution ou non.
  5. De plus, cela peut être ouvert directement en tapant «services.msc» dans le RUN et en cliquant sur OK . L'écran suivant apparaît.

Maintenant, vérifiez si le moteur de base de données a été configuré pour accepter les connexions à distance. Pour vérifier cela, suivez les étapes suivantes.

  1.  Une fois les services ouverts, vous pouvez voir le moteur de base de données dans le volet droit. Le « MSSQLSERVER » est une instance par défaut sans nom. Une instance par défaut ne peut en être qu'une.
  2. Dans le cas de «SQL Express», l' instance par défaut sera «SQLEXPRESS» à moins qu'elle ne soit renommée par quelqu'un lors de l'installation.
  3. Vérifiez si l'instance que vous essayez de vous connecter a le même nom que celui indiqué dans les services.
  4. Vérifiez également si l'état de l'instance est «EN COURS D'EXÉCUTION» .
  5. De plus, si vous essayez de vous connecter à l'instant nommé, vérifiez à nouveau si «SQL Server Browser service» est déjà en cours d'exécution. Vous devez donc vérifier si le «service SQL Server Browser» est démarré sur le serveur sur lequel SQL Server est installé.
  6. Si le moteur de base de données ne fonctionne pas, vous devez le redémarrer. Donc pour démarrer le «Moteur de base de données» , dans le volet de droite, faites un clic droit sur «Moteur de base de données» (celui par défaut «MSSQLSERVER») , puis cliquez sur «Démarrer» .

Étape 2. Obtenez l'adresse IP de l'ordinateur.

Pour le faire, suivez ces étapes.

  1. Tout d'abord, dans le menu Démarrer, cliquez sur «RUN» et tapez «cmd» et appuyez sur ok .
  2. Dans la fenêtre d' invite de commande , tapez «ipconfig» et notez les adresses IPV4 et IPV6 . Les gens utilisent principalement l' adresse IPV4.

Étape 3. Obtenez le numéro de port TCP utilisé par le serveur SQL

Suivez les étapes suivantes pour obtenir le numéro de port TCP utilisé par le serveur SQL

  1. À l'aide de «SQL Server Management Studio» ( SSMS), connectez-vous à l'instance du serveur SQL
  2. À partir de «l'explorateur d'objets», développez «Gestion» , développez «Journal du serveur SQL» et cliquez sur le journal actuel sur lequel vous devez appliquer le filtre.
  3. Pour appliquer le fichier, cliquez sur Appliquer le filtre et tapez «le serveur écoute sur» dans la zone de texte Message contient. Cliquez sur Appliquer le filtre et appuyez sur OK.
  4. Un message comme «le serveur écoute sur ['any' 1433]» devrait être affiché. Le message indique que l'instance SQL Server écoute sur tous les ordinateurs avec l'adresse IP IPv4 et le port TCP est  1433 (par défaut) .
  5. Pour plus d'une instance, le port TCP sera différent pour chaque instance.
  6. Si ce n'est pas un cas, cliquez sur «Tous les programmes» , pointez sur Outils de configuration du serveur MS SQL, «Gestion de la configuration du serveur SQL» , puis cliquez avec le bouton droit sur «TCP \ IP» et cliquez sur Activer et redémarrer le serveur SQL pour laisser les modifications créer un impact.

Méthode 2: activation des protocoles pour le port 1433

La connexion au «Moteur de base de données» à partir d'un autre ordinateur n'est pas autorisée dans de nombreuses implémentations de «SQL Server» à moins qu'un administrateur n'utilise «Configuration Manager» pour l'autoriser. Les étapes suivantes doivent être suivies pour ce faire.

  1. Cliquez sur «Menu Démarrer» puis pointez sur «Tous les programmes»
  2. Pointez vers «SQL Server 2008 R2»
  3. Pointez sur «Outils de configuration» , puis cliquez sur «Gestionnaire de configuration SQL Server» .
  4. Développez « Configuration réseau SQL Server».
  5. Sélectionnez « protocoles pour serveur MSSQL» . Cliquez sur «TCP \ IP» dans le panneau de droite.
  6. Dans l'onglet «protocole» , activez l'option «oui» .
  7. Choisissez l' onglet "Adresse IP" dans la fenêtre et définissez " Port TCP" égal à " 1433" dans l' entrée "Tout IP" .
  8. Maintenant, redémarrez le moteur de base de données pour apporter des modifications à leur impact. Pour ce faire, dans le volet gauche, sélectionnez les services de serveur SQL, puis dans le volet droit, cliquez avec le bouton droit sur l'instance du moteur de base de données et appuyez sur «redémarrer» .

Méthode 3: créer une exception de pare-feu

Parfois, le pare-feu Windows s’active et bloque les liens d’un autre ordinateur. Pour résoudre ce problème, suivez ces étapes.

  1. Cliquez sur "Démarrer" et commencez à taper "Firewall.cpl" dans la zone d'exécution.
  2. Vous obtenez le «cadre de configuration» pour le pare-feu Windows en exécutant la commande «firewall.cpl» . Vous pouvez activer / désactiver le pare-feu avec des exceptions et d'autres paramètres appliqués ici. Vérifiez l'état du pare-feu et activez-le pour l'activer si le pare-feu est désactivé. Si vous venez de l'activer, votre pare-feu bloquera toute demande de connexion «SQL Server» à votre ordinateur à ce stade. En faisant certaines exceptions, vous devez configurer le pare-feu pour autoriser l'accès à un moteur de base de données SQL Server.
  3. Cliquez sur "Paramètres avancés"
  4. Nous devons en savoir plus sur les ports utilisés pour « SQL Server » et la fonctionnalité « SQL Server Browser » lorsque nous traitons des configurations de pare-feu «SQL Server». Les deux sont impliqués dans la mise en place d'un « pare-feu » pour le «SQL Server» . Il serait donc nécessaire de parcourir séparément les deux concepts.
  5. Vous pouvez autoriser ou bloquer les tentatives de trafic qui répondent aux exigences de la règle pour accéder à l'ordinateur. Par défaut, le  « trafic entrant  »  est bloqué, vous devez établir une  « règle entrante  »   pour permettre au trafic d'atteindre l'ordinateur. Appuyez sur les règles entrantes dans le volet gauche du «Pare-feu Windows avec sécurité avancée  » et cliquez sur la nouvelle règle dans la  fenêtre «Actions» 
  6. Sélectionnez « Port » sous « Type de règle  » et appuyez sur le bouton « Suivant»
  7. Sélectionnez maintenant «Ports locaux spécifiques» et définissez-le sur 1433
  8. Sélectionnez maintenant «Autoriser la  connexion»  dans la   boîte de dialogue «Action» et appuyez sur le bouton Suivant
  9. Donnez à la règle un « titre» sur cette étape et appuyez sur le bouton « Terminer» .
  10. Sélectionnez " Règle personnalisée" dans l' onglet "Nouvelle règle"
  11. Cliquez sur "personnaliser"
  12. Sélectionnez « Database Engine instance  service »   des « Personnaliser service  Paramètres »  sous  « Appliquer à ce service »  et cliquez sur le  « OK » bouton 
  13. Donnez un nom à la règle et cliquez sur Terminer
  14. Ajoutez également «sqlservr.exe» généralement situé dans «C: \ Program Files (x86) \ Microsoft SQL Server \ MSSQL.x \ MSSQL \ Bin» (ou vérifiez le chemin de votre dossier réel) au chemin, vérifiez vos installations pour le réel chemin du dossier) et le port dont la valeur par défaut est «1433» . Vérifiez également votre chaîne de connexion.

Méthode 4: vérifier la connexion locale

L'une des raisons de cette erreur est que si nous fournissons le mauvais nom de serveur, cela entraînera une erreur. Comme le montre la figure ci-dessous, le nom du serveur fourni est «DESKTOP-UD88TLT1», tandis que le nom exact du serveur est «DESKTOP-UD88TLT» . Il ne pourra donc pas se connecter au serveur, ce qui entraînera une erreur «impossible de se connecter au serveur» . C'est la raison la plus fondamentale de l'erreur, nous devons donc la vérifier d'abord si vous travaillez localement.

L'erreur survient lors de la connexion locale au serveur SQL avec un nom de serveur incorrect. Si vous utilisez l'édition express après le nom de votre serveur, ajoutez «\ SQLEXPRESS» comme illustré ci-dessous.