web-dev-qa-db-fra.com

Erreur SQL Server "Fournisseur de canaux nommés: Impossible d'ouvrir une connexion à SQL Server [53]"

J'avais l'habitude d'avoir une application de bureau pointant sur une base de données Sybase via un fichier .ini contenant cette chaîne de connexion: 

 CONNECTION_NAME = "DSN="Dna_Name";UID="User";PWD="Password""

Cela a fonctionné parfaitement. 

Il y a quelques jours, la base de données a été migrée vers SQL Server 2008 R2 et je dois mettre à jour le fichier .ini pour rediriger le nouveau serveur de production. J'ai mis à jour la chaîne de connexion comme suit: 

CONNECTION_NAME = "Provider=SQLNCLI10.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog="CatalogName";Data Source="Production_DNS""

Mais j'obtiens l'erreur suivante: 

Fournisseur de canal nommé: Impossible d'ouvrir une connexion à SQL Server [53]

Notes complémentaires:

  • Le DNS de production fonctionne parfaitement dans d’autres domaines informatiques et d’autres applications parviennent au serveur sans problème.
  • J'essaie de me connecter à partir de dev box.
  • L'application est une implémentation héritée avec plusieurs années, c'est pourquoi le fichier *.ini doit être conservé.

J'ai passé quelques heures à naviguer sur Internet à la recherche de détails sur les erreurs, avec pratiquement aucun résultat. 

La nouvelle chaîne de connexion semble-t-elle correcte? Une idée de ce qui peut générer l'erreur? Des recommandations?

Merci d'avance,

7
G21

Heureusement, après avoir fouillé pendant plusieurs heures, on m'a dit qu'une erreur DNS de production était à l'origine de mon problème. 

J'ai résolu le problème en fournissant le nom du serveur sur l'attribut de connexion à la source de données comme suit: 

CONNECTION_NAME = "Provider=SQLNCLI10.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog="CatalogName";Data Source="Production_Server_Name;""

Astuce: pour éviter les erreurs sur le nom du serveur, vous pouvez l'extraire via SQL Server Management Studio en exécutant le T-SQL suivant:

SELECT @@servername
7
G21

Vous pointez probablement sur le mauvais serveur ... J'ai eu la même erreur en montrant un serveur Linux.

0
profimedica