J'utilise Windows 7 Beta et j'essaie d'installer une application Web localement. Ce site Web utilise Microsoft SQL Server 2005 Express (SQLEXPRESS) et un fichier MDB dans le dossier ~ / App_Data du site Web. On m'a demandé de configurer IIS7 pour utiliser Classic .NET AppPool pour cette application Web.
Chaque fois que le site Web se charge, je reçois l'erreur suivante:
Une erreur s'est produite lors de la connexion au serveur de base de données: impossible de générer une instance utilisateur de SQL Server en raison de l'échec de la récupération du chemin de données d'application locale de l'utilisateur. Veuillez vous assurer que l'utilisateur dispose d'un profil utilisateur local sur l'ordinateur. La connexion sera coupée.
Internet regorge d'articles écrits sur ce sujet. La sagesse dominante semble être:
- Configurez le service SQL Express pour utiliser le compte système local .
- Supprimez le répertoire suivant: C: \ Users \ username \ AppData \ Microsoft \ Microsoft SQL Server Data \ SQLEXPRESS
Aucun de ces correctifs n'a eu d'impact. J'ai bricolé des autorisations et des paramètres pendant des heures en vain. Quelqu'un peut-il suggérer un correctif ou m'aider à comprendre comment obtenir des informations plus détaillées sur le problème.
Réponses:
Dans IIS sous Windows 7, sélectionnez le pool d'applications, puis «paramètres avancés». Sous "modèle de processus", recherchez "Charger le profil utilisateur" et définissez-le sur true.
SQL devrait maintenant se charger sous le compte du pool d'applications par défaut.
la source
J'ai eu les mêmes problèmes sur mon poste de travail mais jamais sur un serveur.
Il s'agit d'un correctif temporaire que j'ai trouvé il y a quelque temps sur le Web et qui semble fonctionner:
Dans l'éditeur de requête, tapez: exec sp_configure 'user instances enabled', 1 puis: Reconfigure
Redémarrez ensuite la base de données SQL Server.
a trouvé ce lien aujourd'hui
et après une recherche rapide sur StackOverflow /programming/281500/error-failed-to-generate-a-user-instance-of-sql-server
la source
Brian,
Pour que cela ait du sens, jetez d'abord un œil à la liste des processus pour tous les utilisateurs du Gestionnaire des tâches.
w3wp.exe est le nouveau processus de travail WWW. Il est exécuté dans un sandbox de sécurité en utilisant les autorisations d'un utilisateur appelé DefaultAppPool.
Auparavant, au lieu de l'utilisateur DefaultAppPool, il s'agissait d'utilisateurs IUSR et IWAM (voir À quoi servent les comptes IUSR et IWAM dans IIS? ).
Lorsque vous utilisez un fournisseur d'appartenance SQL, le processus w3wp.exe démarre une instance utilisateur SQL Server et se joint à la base de données spécifiée dans la chaîne de connexion, généralement App_Data / ASPNETdb.mdf. L'exécution de l'instance utilisateur de SQL Server nécessite un profil local, afin que les fichiers temporaires aient un emplacement.
Étapes de dépannage:
alors: Reconfigurez
la source