2010-04-01 13 views
7

Ich habe meine Website für die Verwendung der ASP.NET-Mitgliedschaft eingerichtet. es funktioniert gut, wenn man versucht, es auf meiner Entwicklungsmaschine zu verwenden, aber wenn ich es auf dem Web-Server setzen und versuchen, sich einzuloggen, ich diesen Fehler:Datenbank konnte nicht aktualisiert werden, da sie schreibgeschützt ist.

"Failed to update database "C:\INETPUB\WWWROOT\APP_DATA\ASPNETDB.MDF" because the database is read-only. " 
+0

Ist die Datei schreibgeschützt? Hat das ASP-Benutzerkonto Berechtigungen zum Schreiben in das Verzeichnis, in dem sich die Datenbank befindet? –

Antwort

11

Dank für die Hilfe. Ich habe gerade eine Lösung gefunden. In der ACL App_Data hatte ich zwei Einträge: Netzwerkdienst und IIS_IUSRS. Das Netzwerkdienstkonto hatte vollständige Berechtigungen, aber die IIS_IUSRS-Gruppe hatte nur Lesezugriff. Also habe ich IIS_IUSRS volle Berechtigungen gegeben und es hat funktioniert!

danke nochmal.

1

Das Benutzerkonto, dass die Website unter Bedürfnisse läuft Schreibberechtigungen für die Datei.

Es ist auch wahrscheinlich, dass die Datei als Ergebnis der Übertragung schreibgeschützt ist und als schreibbar festgelegt werden muss.

+0

Ich habe dem Netzwerkdienstkonto die volle Berechtigung erteilt. Ich verwende Windows 7 – Attilah

+0

Können Sie die Verbindungszeichenfolge veröffentlichen? – Oded

+1

Hallo Oded, danke für die Hilfe. Ich habe gerade eine Lösung gefunden. In der ACL App_Data hatte ich zwei Einträge: Netzwerkdienst und IIS_IUSRS. Das Netzwerkdienstkonto hatte vollständige Berechtigungen, aber die IIS_IUSRS-Gruppe hatte nur Lesezugriff. Also habe ich IIS_IUSRS volle Berechtigungen gegeben und es hat funktioniert! – Attilah

2

Überprüfen Sie diese Datei auf der Festplatte. Rechtsklicken und zu den Eigenschaften gehen.

Wenn es sich um eine schreibgeschützte Datei handelt, müssen Sie sie schreibbar machen.

+0

Ja, die Datei read-only.it erbt dieses Verhalten vom übergeordneten Ordner App_folder. Eine lustige Sache ist, dass wenn ich versuche, den App_Data-Ordner von schreibgeschützt zu lösen, geht es zurück zu schreibgeschützt. weiß nicht, was zu tun ist ... – Attilah

+1

Ich hatte ein ähnliches Problem nicht bemerkt, dass TFS legte es nach einem Check-in nur lesen. –

2

Wenn die Datei schreibgeschützt ist und Sie sie nicht über das Eigenschaftenfenster ändern können, müssen Sie eine Eingabeaufforderung verwenden.

Refer to this Support article at Microsoft.

+0

Danke Greg, aber das löst das Problem immer noch nicht. – Attilah

5

Vergessen Sie nicht, die IIS mit „iisreset.exe“ neu starten, nachdem die Berechtigungen

+0

Das war wirklich hilfreich, die geänderten Berechtigungen wurden nur angewendet, wenn IIS neu gestartet wurde. –

1

Änderung ich attilah Antwort und fand gefolgt: 1. Sowohl IIS-Isur, WebService hatte voll pomission zum App_Data und die MDF. 2. Aber jemand nannte "asp.net 4.0 Pool" und "alle Benutzer" nicht, also habe ich ihnen erlaubt.

Dann 3. Ich folgte Benutzer1280392 die Antwort auf "iisreset" ausführen, aber fehlgeschlagen (aber immer noch pls).

Dann ging ich zum IIS-Manager und tat dies: 4. Klicken Sie auf den Namen des Servers, klickte auf "Neustart" auf der rechten Seite. 5. Klicken Sie auf den Namen der Anwendungen, klicken Sie auf "Neustart" auf der rechten Seite.

und es war in Ordnung.

Verwandte Themen