Question

J'essaie de me connecter à un MDF. Je suis même allé jusqu'au bout de la réinstallation de SQL Server Express (c'est maintenant la seule version de SQL installée sur ma machine, alors que j'avais auparavant 05 dev et express). J'ai vérifié que tous les chemins étaient corrects et jusqu'à présent, mon google-fu ne m'a pas aidé.

Le message d'exception complet est:

  

Impossible de générer une instance d'utilisateur de SQL Server en raison d'une défaillance de   démarrer le processus pour l'instance d'utilisateur. La connexion sera   fermé.

La chaîne de connexion est:

<add name= "CustomerEntities"
     connectionString="metadata=res://*/Data.CustomerModel.csdl|res://*/Data.CustomerModel.ssdl|res://*/Data.CustomerModel.msl;
     provider=System.Data.SqlClient;
     provider connection string='Data Source=.\SQLEXPRESS;
     AttachDbFilename=\App_Data\CustomerDb.mdf;
     Integrated Security=True;
     User Instance=True'"
     providerName="System.Data.EntityClient" />

Informations supplémentaires:

Plusieurs des références à cette erreur trouvée en ligne ne me concernent pas. Par exemple, l'un de ceux que j'ai vus est l'endroit où cette erreur se produit lors d'une tentative de démarrage de l'instance d'utilisateur sur un bureau distant (je le fais localement). Tandis qu'un autre suggère que cela a à voir avec les fichiers restants d'une ancienne installation express ... J'ai regardé dans les emplacements prescrits et n'ai pas trouvé ces artefacts. J'ai également essayé de lancer sp_configure 'user instances enabled', '1', mais il était indiqué que la valeur 1 était déjà définie.

Était-ce utile?

La solution

ok, ça marche maintenant! suppose que c’était un problème complexe ... les étapes que j’ai prises pour le résoudre sont en tant que telles:

  1. Modification de la propriété suivante dans la chaîne de connexion (notez la différence subtile): AttachDbFilename=|DataDirectory|CustomerDb.mdf;
  2. Suppression du contenu du répertoire suivant: c:\Users\<user name>\AppData\Local\Microsoft\Microsoft SQL Server Data\SQLEXPRESS. Je pensais avoir déjà cherché cela auparavant, mais j'avais en fait cherché dans le dossier Microsoft Sql Server. Encore une fois, une différence subtile.

Une fois ces deux opérations effectuées, la connexion a commencé à fonctionner :-D

Autres conseils

Même si les réponses ci-dessus ont résolu le problème de nombreuses personnes, je trouve toujours que celles-ci ne répondent pas à l’essence du problème. La réponse la plus proche de @sohaiby ci-dessus est la plus proche. Mais cela renvoie à tort à l’utilisation de Management Studio.

Le message d'erreur en haut de cette rubrique indique très clairement que le problème est lié à la génération d'une instance d'utilisateur. Voici comment chaque instance est utilisée et comment elle est utilisée: https://msdn.microsoft.com/en- us / library / ms254504 (v = vs.110) .aspx

Personnellement, j'ai rencontré ce problème lors du basculement de la connexion à la base de données du mode d'authentification Windows vers l'authentification SQL Server. Je l'ai résolu en modifiant simplement une partie de la chaîne de connexion en: & "User Instance = false; &"; au lieu de & "User Instance = true; &". quot ;, qui a bien fonctionné avec l'authentification Windows.

Après avoir changé pour " User Instance = false; " ma connexion a bien fonctionné sans aucune manipulation supplémentaire. Je ne peux pas insister pour que cela fonctionne ou convienne dans tous les scénarios. Cependant, je recommanderai certainement de l'essayer avant les autres méthodes radicales décrites ci-dessus, telles que l'effacement des répertoires de travail SQL Server.

J'ai rencontré la même erreur lorsque j'ai déplacé le code d'une machine à une autre. J'utilise VS2010 et SQLEXPRESS 2008 l'accompagne.

Astuce: supprimer tout le contenu du dossier suivant & "C: \ Utilisateurs \ Nom d'utilisateur \ AppData \ Local \ Microsoft \ Microsoft Serveur de données SQL \ SQLEXPRESS &"; a travaillé pour moi.

Outre les autres solutions proposées ici, celle-ci peut également être utile. Assurez-vous que le pool d'applications s'exécute en tant que service réseau et non pas ApplicationPoolIdentity.

Cette solution a été trouvée ici: http://blogs.msdn.com/b/webdevelopertips/archive/2010/05/06/tip-106-did-you-know- comment-créer-le-aspnetdb-fichier-mdf.aspx

Comme l’ont noté d’autres personnes, la suppression du contenu du répertoire: c: \ Utilisateurs \\ AppData \ Local \ Microsoft \ Microsoft SQL Server Data \ SQLEXPRESS l’a résolu pour moi. Une note qui peut aider les autres utilisateurs de Windows 7 à parcourir le répertoire c: \ users \ nom_utilisateur à partir du navigateur de documents n’affiche pas le dossier AppData qui m’a jeté pendant un moment (car je pensais ne pas avoir le répertoire AppData) jusqu’à ce que J'ai découvert qu'il existe bel et bien (mais ne s'affiche pas dans le navigateur de documents de Windows 7), il vous suffit de taper le nom du chemin complet pour y accéder.

J'ai commencé à avoir cette erreur ce matin dans un environnement de déploiement de test. J'utilisais SQL Server Express 2008 et l'erreur que je recevais était

" Impossible de générer une instance d'utilisateur de SQL Server en raison d'un échec du démarrage du processus pour l'instance d'utilisateur. La connexion sera fermée. & ";

Incertain de ce qui l’a provoquée, j’ai suivi les instructions de cet article et d’autres articles à propos de suppression du " C: \ Utilisateurs \ Nom d'utilisateur \ AppData \ Local \ Microsoft \ Microsoft Serveur SQL Data \ SQLEXPRESS " répertoire, mais en vain.

Le truc pour moi a été de changer la chaîne de connexion de

& Source de données =. \ SQLExpress; Catalogue initial = DBFilePath; Sécurité intégrée = SSPI; MultipleActiveResultSets = true "

à

" Data Source =. \ SQLExpress; Catalogue initial = DBName; Sécurité intégrée = SSPI; MultipleActiveResultSets = true "

Je règle ce problème avec mon fichier mdf dans une application de formulaire Windows et je ne fais que redémarrer mon ordinateur. Mon problème est résolu.

Pour résoudre ce problème, ouvrez SQL Server Management Studio Express. Dans l'éditeur de requête, tapez ce texte:

sp_configure 'user instances enabled', 1;
 RECONFIGURE

Lancez-le. Redémarrez ensuite la base de données SQL Server.

Avez-vous essayé de vous connecter à l'instance SQL Server à l'aide de SQL Management Studio?

Si cela ne vous permet pas non plus de vous connecter, il se peut que le service SQL ne démarre pas correctement.

Vérifiez que le service est en cours d'exécution en consultant les services dans le panneau de configuration.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top