Ich verwende Windows 7 Beta und versuche, eine Webanwendung lokal zu installieren. Diese Website verwendet Microsoft SQL Server 2005 Express (SQLEXPRESS) und eine MDB-Datei im Ordner ~ / App_Data der Website. Ich wurde angewiesen, IIS7 für die Verwendung von Classic .NET AppPool für diese Webanwendung zu konfigurieren .
Jedes Mal, wenn die Website geladen wird, wird folgende Fehlermeldung angezeigt:
Beim Versuch, eine Verbindung zum Datenbankserver herzustellen, ist ein Fehler aufgetreten: Fehler beim Generieren einer Benutzerinstanz von SQL Server aufgrund eines Fehlers beim Abrufen des lokalen Anwendungsdatenpfads des Benutzers. Stellen Sie sicher, dass der Benutzer ein lokales Benutzerprofil auf dem Computer hat. Die Verbindung wird geschlossen.
Das Internet ist voll mit Artikeln zu diesem Thema. Die vorherrschende Weisheit scheint zu sein:
- Konfigurieren Sie den SQL Express-Dienst für die Verwendung des lokalen Systemkontos .
- Löschen Sie das folgende Verzeichnis: C: \ Benutzer \ Benutzername \ AppData \ Microsoft \ Microsoft SQL Server-Daten \ SQLEXPRESS
Keine dieser Korrekturen hat Auswirkungen gehabt. Ich habe stundenlang vergeblich an Berechtigungen und Einstellungen herumgebastelt. Kann jemand eine Lösung vorschlagen oder mir helfen zu verstehen, wie ich detailliertere Informationen über das Problem erhalten kann.
Antworten:
Wählen Sie in IIS unter Windows 7 den Anwendungspool und dann "Erweiterte Einstellungen" aus. Suchen Sie unter "Prozessmodell" nach "Benutzerprofil laden" und setzen Sie es auf "true".
SQL sollte jetzt unter dem Standard-App-Pool-Konto geladen werden.
quelle
Ich hatte die gleichen Probleme auf meiner Workstation, aber nie auf einem Server.
Dies ist eine vorübergehende Korrektur, die ich vor einiger Zeit im Web gefunden habe und die anscheinend funktioniert:
In dem Abfrage - Editor Typ: exec sp_configure 'user - Instanzen aktiviert', 1 dann: rekonfigurieren
Starten Sie dann die SQL Server-Datenbank neu.
habe diesen Link heute gefunden
und nach einer kurzen Suche auf StackOverflow /programming/281500/error-failed-to-generate-a-user-instance-of-sql-server
quelle
Brian,
Damit dies für alle sinnvoll ist, sehen Sie sich zunächst die Prozessliste für alle Benutzer im Task-Manager an.
w3wp.exe ist der neue WWW-Worker-Prozess. Es wird in einer Sicherheitssandbox mit den Berechtigungen eines Benutzers namens DefaultAppPool ausgeführt.
Früher waren es anstelle des DefaultAppPool-Benutzers IUSR- und IWAM-Benutzer (siehe Was sind die IUSR- und IWAM-Konten in IIS? ).
Wenn Sie einen SQL-Mitgliedschaftsanbieter verwenden, startet der Prozess w3wp.exe eine SQL Server-Benutzerinstanz und hängt sie an die in der Verbindungszeichenfolge angegebene Datenbank an, üblicherweise App_Data / ASPNETdb.mdf. Das Ausführen der Benutzerinstanz von SQL Server erfordert ein lokales Profil, damit temporäre Dateien irgendwohin gelangen.
Schritte zur Fehlerbehebung:
dann: Neu konfigurieren
quelle