SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010
-
25 sept. 2007 à 19:33
iguypouf
Messages postés45Date d'inscriptionmercredi 27 octobre 2004StatutMembreDernière intervention26 août 2009
-
28 nov. 2007 à 11:11
Bonjour et au secours,
J'ai une application avec l'authentification intégrée ASP.Net.
Je la publie chez un hébergeur. J'ai droit à une base SQL SERVER. Je la cree dans le Plesk: "MaBaseSQL". je crée dans la foulée un utilisateur, appelons-le "MOI" et un Mot de passe "MonMdP"
A l'aide de Management Studio, avec l'authentification SQL SERVER, je me connecte au serveur distant et je lui charge toutes les tables de la base locale ainsi que les procédures stockées. Au passage, je vois mon utilisateur (MOI) et je constate qu'il est bien dans les roles db_reader et db_writer.
Finalement, j'ajuste mon connectionString et c'est là que ça se gâte :
<connectionStrings>
</connectionStrings>
J'ai essayé toutes les variantes possibles et je me vois toujours répondre la même chose:
Une erreur s'est produite lors de l'établissement d'une connexion au serveur. Lors de la connexion à SQL Server 2005, cet échec peut être dû au fait que les paramètres par défaut de SQL Server n'autorisent pas les connexions à distance. (provider: Interfaces réseau SQL, error: 26 - Erreur lors de la localisation du serveur/de l'instance spécifiés
J'ai vérifié les propriétés du serveur avec Management Studio, il accepte bien les connexions distantes. Que pourrais-je avoir oublié ou mal fait ?
Le support de l'hébergeur reste bien entendu laconique et légèrement agacé, façon de laisser croire qu'on maitrise....
Si quelqu'un a un petite idée...
Merci d'avance
Gilles
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010 27 sept. 2007 à 09:44
bonjour,
VICTOIRE, la bête est terrassée.
Il suffit de mettre dans le web.config :
<clear />
<addname= "
LocalSqlServer "
connectionString ="
Data Source=localhost;Initial Catalog=MaBaseSQL;User Id=MOI;Password=MonMdP;Integrated Security=False"
providerName="
AspNetSqlMembershipProvider1"
/>
<!-- ...................Rajout de mes autres chaines........................ -->
En effet, en supprimant tous les connectionstrings avec <clear />, le machine.config du serveur réclamait:
Le nom de connexion 'LocalSqlServer' est introuvable dans la configuration des applications, ou la chaîne de connexion est vide.
alors le lui ai rendu en mettant MA chaine de connexion et ça marche!!
Merci à vous deux, David REI et Jesusonline pour votre aide précieuse.
Gilles
David REI
Messages postés33Date d'inscriptionmardi 18 septembre 2007StatutMembreDernière intervention27 septembre 2007 25 sept. 2007 à 21:21
Salut SuperBouly,
J'ai eu la même erreur que toi, à un moment aussi avec le webPartManager qui necessite par défaut un mécanisme pour la personnalisation dans SQL Server et j'ai dû rajouter une entrée <remove> de ma connection String pour finalement la rédéfinir avec un add ... c'était dans le KB de Microsoft :$ Mais cette erreur elle sert un peu à tout j'ai l'impression.. Je ne sais pas si ça va t'avancer dans ta recherche...
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010 25 sept. 2007 à 22:05
bonsoir
merci de ta réponse, je viens d'essayer
<removename="
ConnectionString"
/>
<addname="
ConnectionString" etc...
mais sans succès !
Il faut que je trouve autre chose.
Au fait, sans faire de parano (des fois ça arrive!) , se peut-il que je sois victime d'un pare-feu mal maîtrisé ou qqch du même genre ?
@+Gilles
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 26 sept. 2007 à 12:01
Bonjour,
au niveau du remove, je te conseille plutot de faire un <clear />. Le remove est nécessaire si tu appelle ta connectionstring le nom par défaut, localsqlserver je crois.
Pour ton problème, es tu sur que le serveur sql se trouve bien sur la meme machine que le serveur web ? Quand tu te connecte à distance tu utilises la même IP que l'ip du serveur web ? Je pense que le problème viennent de là. L'autre possibilité c'est qu'il y a un part feu entre ton serveur web et ton serveur sql ... mais comme configuré actuellement ce n'est pas possible puisqu'il est sur la meme machine.
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010 26 sept. 2007 à 15:24
bonjour,
Merci de me aider un peu. je reviens à la fin de mon message sur les difficultés rencontrées avec le <clear />
Pour l'instant, le Pb se décale un peu : je viens d'avancer un peu dans ma recherche: j'ai modifié mon web.config :
j'ai mis
de cette façon, j'accède à certaines pages qui ne demandent pas de connexion à la base pour se remplir.
DE Là, je puis me connecter avec un login et un mot de passe et revenir à la page .
CE qui prouve que le string de connexion à la base et la base elle-même sont convenables OUF! je commençais à douter.
Par contre, les pages qui demandent de renseigner des propriétés de profil me renvoient l'erreur 26:
(provider: Interfaces réseau SQL, error: 26 - Erreur lors de la localisation du serveur/de l'instance spécifiés)
Le Problème est donc identifié, il y a une erreur dans mon web.config au niveau du MembershipProvider.
Pourtant, ce qui suit me parait pourtant correct (et marche en local) avec un petit doute sur "applicationName= "/"
Pour ce < clear />, si je le mets au début de <connectionStrings>
le serveur me retourne une erreur sur le machine.config du serveur distant !
Message d'erreur de l'analyseur: Le nom de connexion 'LocalSqlServer' est introuvable dans la configuration des applications, ou la chaîne de connexion est vide.
Ligne 166 : type ="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
Fichier source : C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\machine.config Ligne : 166
Là, je suis un peu perdu, que dois-je alors rajouter pour faire bonne mesure?
Pour ce qui est de savoir si c'est la même machine, je peux voir le nom de l'ordinateur qui porte le serveur SQL dans SQL SERVER Management Studio, mais pour le serveur IIS, je ne sais pas où regarder
merci de votre patience
@+Gilles
SuperBouly
Messages postés410Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention 8 mai 2010 26 sept. 2007 à 15:28
Petit detail: en fait, les login et MdP sont bien les mêmes dans les 2 connectionStrings, c'est une erreur de recopiage. l'errreur n'est pas là
@+Gilles
David REI
Messages postés33Date d'inscriptionmardi 18 septembre 2007StatutMembreDernière intervention27 septembre 2007 26 sept. 2007 à 18:55
Oui c'est le problème du <clear />, il n'affecte pas une chaine de connection particulière comme le fait le remove.. donc comme la chaine n'est pas défini, il
va essayer de la retrouver au niveau du machine.config ... Utilises-tu un mécanisme de personnalisation ASP.NET qui necessite une base de donnée ? Par défaut il
va taper dans la bd de la connection string localSqlServer, j'avais fait exactement un remove de l'entrée "localSqlServer" dans le web.config et je l'ai redefini ensuite avec mon serveur sql de prod.. Il doit y avoir un autre moyen mais je n'ai pas eu le temps de chercher dans le détail :/
iguypouf
Messages postés45Date d'inscriptionmercredi 27 octobre 2004StatutMembreDernière intervention26 août 2009 27 nov. 2007 à 18:07
Bonjour à tout le monde,
Je sais ce problème date un peu, mais j'ai une petite question pour des experts !
Je me rends compte que l'appli que je suis en train de prendre en main, possède comme connection string non pas
"Datasource=localhost" mais bien "Datasource="XX.XX.XX.XX", représentant l'ip du serveur... le même que celui du serveur asp !!!
Est-il possible que cela soit la cause d'une lenteur des requêtes SQL ?