Résoudre les problèmes de connectivité de SQL Server

Dans ce post, je partage les différents tests qui devraient vous aider à déboguer le problème. Les étapes ci-dessous vous aideront à résoudre des problèmes divers comme message d'erreur ci-dessous :

Une erreur liés au réseau ou d'instance-spécifique s'est produite lors de l'établissement une connexion à SQL Server. Le serveur est introuvable 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 : des canaux fournisseur, erreur : 40 - ne peut pas ouvrir une connexion à SQL Server)

COTE SERVEUR

Etape 1: SQL Server Configuration Manager 
Aller dans tous les programmes >> Microsoft SQL Server 2008 >> Configuration Tools >> SQL Server Configuration Manager >> SQL Server Services, et vérifier si  :
- le statut du service SQL Server est «démarré».
- le statut du service SQL Server est «démarré».( si vous avec une instance qui n'utilise pas le port 1433)
- si  les protocoles TCP/IP et NP sont activés

Etape 2: Pare-feu
Désactivez votre pare-feu et si le problème  ne se produit plus, suivre les deux articles ci-dessous

Comment ouvrir le port du pare-feu pour SQL Server sous Windows Server 2008 ?
Configuration du Pare-feu Windows pour autoriser l'accès à SQL Server

Etape 3 : Activer les connexions distantes
Faites un clic droit sur le nœud du serveur et sélectionnez Propriétés. Allez à gauche Tab de connexions et cocher la case «Autoriser les connexions à distance sur ce serveur"

Pour configurer le moteur de base de données de façon à accepter les connexions distantes

COTE CLIENT

Etape 1 : La chaine de connexion n'est pas correcte ou ne pointe pas sur un serveur existant. Vérifier le nom de l'instance SQL

Etape 2 : Vérifier si le port SQL est ouvert
telnet <votre_machine_cible> <TCP_Port>

Etape 3 : Ping server
ping -a <votre_machine_cible>
ping -a <votre_adresse_ip_distante>
Run “net view \\votre_machine_cible

Etape 4 : SQL Alias.
De mon côté, je travaillais sur une machine 64 bits, mais j'ai dû supprimer un alias dans  le SQL Configuration Manager -> 32 Bit Config -> Alias.
J'ai aussi vérifié avec cliconfg.exe

Les clés de registres sont:
32 bit: HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo
64 bit: HKLM\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo

Etape 5 : Essayer la connexion à SQL server sans passer par votre applicatif
SQLCMD –E -S tcp:<IPAddress>[\<InstanceName>],<Port>
SQLCMD –E -S tcp:<Your_target_machine>[\<InstanceName>],<Port>

Essayer le nom FQDN pour vous connecter à Microsoft SQL Server.
SQLCMD –E -S tcp:<Your_target_machine>.<FQDN>[\<InstanceName>],<Port>

Autres liens

SQL_Protocols Team
How to configure SQL Server 2005 to allow remote connections
How to configure an instance of SQL Server to listen on a specific TCP port or a dynamic port
Troubleshooting Server and Database Connection Problems
SQL Server 2005 Connectivity Issue Troubleshoot - Part I
Troubleshoot Connectivity Issue in SQL Server 2005 - Part II
Named Pipes Provider, error: 40 - Could not open a connection to SQL Server
Steps to troubleshoot SQL connectivity issues
Named Pipes Provider, error: 40 - Could not open a connection to SQL Server (Microsoft SQL Server, Error: XXX)

 

Michel Degremont | Premier Field Engineer - SQL Server Core Engineer |