2008-11-19 11 views
1

Je suis actuellement émigre un de mes clients des sites sur un serveur Windows 2008 et installation de SQL 2008, mais je rencontre des problèmes énormes avec la connexion à la base de données du site.ASP classique sur Server 2008 et SQL Server 2008

J'ai restauré la base de données à partir d'une sauvegarde SQL 2k dans le serveur SQL 2008, j'ai installé correctement l'utilisateur et peut se connecter en tant que utilisateur en studio de gestion fine. J'ai copié sur le site .asp fichiers qui se chargent bien quand il n'y a pas d'accès à la base de données. Mais quand j'essaie d'accéder à la base de données, il échoue avec "Login Failed for user ......".

je réinitialiser les mots de passe, a créé de nouveaux utilisateurs, a changé le connectionstring de OLEDB à SQL Native Client et à nouveau, mais continuez à recevoir des erreurs. J'ai même mis en place une base de données factice et l'utilisateur et ai toujours le même problème.

Quelqu'un connaît-il une raison pour laquelle cela pourrait se produire? Y a-t-il un paramètre dans SQL ou Windows qui me manque?

Je suis à ce pendant des heures et apprécierais vraiment des idées. MISE À JOUR: Si je mets les mauvais détails de connexion dans la chaîne de connexion, j'obtiens l'erreur sur conn.open mais si je mets les bonnes informations de connexion, j'obtiens l'erreur sur cmd.activeconnection = conn. Je ne sais pas si cela aide.

+0

La chaîne de connexion J'utilise actuellement est Const connStr_FC08 = "Driver = {SQL Server}; Serveur = DS-47500; Base de données = TestDB; uid = TESTLOGIN; Pwd = test;" –

+0

OUI! cela fonctionne pour moi après avoir essayé tant d'autres suggestions tout le reste! Merci –

+0

@Chris Morledge, Avez-vous déjà résolu ce problème? J'ai un problème très similaire. Je peux me connecter au serveur sql avec le studio de gestion mais pas par l'asp classique. – Rich

Répondre

1

Je viens d'avoir quelques problèmes similaires avec notre Windows 2008 et SQL Server 2008. De ce que je peux me souviens ce sont les étapes que nous avons traversées pour permettre la connectivité en utilisant l'authentification SQL

  1. Connectez-vous à SQL Server en tant qu'administrateur, modifier les propriétés du serveur pour permettre l'authentification en mode mixte (authentification SQL et l'authentification Windows)

  2. Redémarrez le service SQL Server

  3. aide le gestionnaire de configuration SQL Server assurez-vous que les protocoles sont enalbed (TCP/IP)

Nous avons eu pas mal de problèmes de pare-feu, en ce qui concerne conectivity. Parfois, l'échec de connexion pour l'utilisateur n'était pas la véritable cause du problème. Je crée généralement un fichier avec une extension udl pour tester la connectivité.

Lorsque vous vous connectez à votre serveur SQL ne vous utilisez l'authentification Windows?

Espérons que cela aide.

+0

Merci pour la réponse, j'avais déjà testé vos points 1 et 2 mais cela n'a pas fait de différence. J'ai essayé de mettre en place une UDL qui fonctionnait donc j'ai copié la chaîne de connexion et maintenant il renvoie une erreur "Object required: 'Provider = SQLOLEDB.1;' "en ligne cmd.activeconnection = conn –

+0

Vous devez supprimer 'Provider = SQLOLEDB.1;' à partir de la chaîne de connexion si vous utilisez SqlClient –

0

Cela ressemble à un problème avec ADO. Avez-vous essayé d'installer la dernière version ou d'actualiser l'installation si vous avez déjà la dernière version?

Edit: Désolé, n'a pas remarqué que vous utilisez Windows Server 2008. Cette version vient avec Windows DAC 6.0, et qui ne peuvent pas être réinstallées autant que je sache. Depuis que votre fichier UDL fonctionne, la seule chose que je peux penser est de s'assurer que l'identité de l'utilisateur pour votre site ASP a accès aux dossiers contenant les DLLs DAC. Vous pouvez essayer d'exécuter FileMon à partir de Sysinternals et vérifier les entrées refusées à ces fichiers.

+0

Voulez-vous dire MDAC? J'ai essayé de trouver quelques-uns à télécharger, mais je ne pouvais pas pour Server 2008 –

0

moi a obtenu la solution, pour la chaîne de connexion asp classique est:

myConnection.ConnectionString = "Driver={SQL Server};Server=xxx.xxx.xxx.xxx,1533;Database=mydb;Uid=user123;Pwd=user123d;" 
0

J'ai eu un problème similaire.

J'ai changé par chaîne de connexion de celle-ci:

DRIVER={SQL Server};SERVER=80.82.xxx.xxx;DATABASE=mydatabasename;UID=myusername;PWD=mypassword 

à ceci:

Provider=SQLNCLI10.1;SERVER=80.82.xxx.xxx;DATABASE=mydatabasename;UID=myusername;PWD=mypassword 

Et cela a fonctionné.

Vous voudrez peut-être jouer avec différents paramètres du fournisseur.

Questions connexes