Bonjour,
Je me heurte depuis deux jours à un problème de connexion à un serveur SQL SERVER 2005, via C#.
Je développe en fait une application C# de type Windows Forms pour un réseau d'entreprise. Jusqu'à présent, nous fonctionnions avec MySQL, et tout marchait à merveille, mais nous sommes passés à SQL SERVER 2005 Standard Edition. La base de données est installée sur le serveur du réseau d'entreprise. Ce serveur tourne sous Windows Server 2003 Enterprise Edition.
Les postes clients accèdaient à la base de données MySQL sur le serveur simplement via l'adresse IP de ce dernier, le nom de la base de donnée, un login et un mot de passe. J'essaie d'appliquer le même principe avec SQL SERVER 2005, mais cela ne fonctionne pas, malgré des heures de recherche.
En local, aucun problème, lorsque j'exécute l'application sur le serveur lui-même, tout se passe bien avec le code suivant :
En local, je peux indifféremment écrire "localhost" ou bien le nom du serveur, et tout marche bien, les requêtes s'exécutent sans problème. (L'authentification est de type SQL Server avec le compte sa)
Code : Sélectionner tout - Visualiser dans une fenêtre à part SqlConnection myConnection = new SqlConnection("Server = localhost; Database = mabdd; User ID = sa; Password = ****; Trusted_Connection = False;");
En revanche, lorsque je tente d'accéder à la base de données via un poste client, cela ne fonctionne pas, avec le code suivant :
J'obtiens le message d'erreur suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Data Source=192.168.10.1,1433;Network Library=DBMSSOCN;Initial Catalog=mabdd;User ID=sa;Password=****;");
"Provider : Fournisseur TCP, error : 0 - Aucune connexion n'a pu être établie car l'ordinateur cible l'a expressément refusé"
J'ai déjà checké pas mal de points sur le serveur :
-Dans "Configuration de la surface d'exposition de SQL Server 2005", les connexions distantes sont autorisées et SQL Server Browser est bien en cours d'exécution
-Dans "SQL Server Configuration Manager", le protocole client TCP/IP est bien activé, et son port par défaut est bien le 1433. (Comment vérifier que c'est bien par ce port qu'il faut passer ?)
-L'adresse IP du serveur est bien 192.168.10.1
-J'ai redémarré plusieurs fois SQL Server
-Parefeu Windows désactivé
-Antivirus Norton désactivé
-Le nom de mon instance est MSSQLSERVER. J'ai donc tenté de me connecter avec la string suivante "Data Source=192.168.10.1/MSSQLSERVER", mais ça ne fonctionne pas non plus
Je ne vois plus où orienter mes recherches, ce que je trouve sur le net ne m'apporte pas d'éléments nouveaux. Si quelqu'un a une idée...
PS : Je ne peux pas non plus utiliser l'assistant de connexion de Visual Studio 2005, car je développe l'application C# Windows Forms sur les PC de mon entreprise où Visual Studio 2005 est bien entendu installé, et non à partir des postes du réseau de l'entreprise cliente (sur lesquels Visual Studio 2005 n'est pas installé). (Ce qui fait que je n'ai pas accès au serveur à partir du poste où je programme)
Partager