3

Ich versuche, ein klassisches Asp-Projekt auf Visual Studio zu laufen, und deshalb versuche ich eine Datenbank wiederherzustellen. Ich kann die .bak Datei nicht finden, wenn ich versuche, sie wiederherzustellen. Es war im C-Laufwerk nicht sichtbar. Ich habe nachgeschaut und gesehen, dass es etwas mit Berechtigungen zu tun hat. Ich habe versucht, Berechtigungen nach Eigenschaften> Sicherheit von .bak Datei an "Jeder" zu aktivieren, es hat nicht funktioniert. Ich habe auch versucht NT Service\MSSQLSERVER. Bitte beachten Sie die folgenden Hinweise.Bak-Datei nicht sichtbar beim Versuch, Datenbank wiederherzustellen

enter image description here

enter image description here

+1

nur um sicher zu sein ... haben Sie versucht, die Option "Alle Dateien" aus dem Dropdown über der OK-Taste auszuwählen? Der Standardwert ist .bak, .trn. Vielleicht ist die Erweiterung der Datei nicht .bak – objectNotFound

+0

Alle Änderungen der Sicherheitsberechtigungen, die Sie vornehmen, müssen stattdessen im übergeordneten Verzeichnis vorgenommen werden, das die * .bak-Datei und nicht die bak-Datei selbst enthält. In Ihrem Fall befindet sich die bak-Datei im Root-Verzeichnis von 'C: \ ', so dass Sie auf dem Laufwerk' C: \ ', das Ihre bak-Datei enthält, Berechtigungsänderungen vornehmen müssen. Das Ändern der Berechtigungen für 'C: \' root wird nicht als gute Methode betrachtet, da es sich normalerweise um das Startlaufwerk handelt. Ein sicherer Weg wäre also, einen Ordner im Laufwerk C: zu erstellen, die bak-Datei in den neuen Ordner zu verschieben und stattdessen die Sicherheitsberechtigungen des neuen Ordners zu ändern. – RBT

Antwort

3

Sie müssen auch Berechtigungen für den Ordner aktivieren, auf dem sich die Datei befindet. SSMS muss zuerst den Ordner durchsuchen und dann die Datei lesen.

In Ihrem Fall versucht SQL Server, auf den Ordner unter Verwendung NT Service\MSSQLSERVER Konto zugreifen, so dass Berechtigungen für dieses Konto erteilt werden, keine Notwendigkeit, weitere Berechtigungen (für alle) geben.

auch unten versuchen, wenn oben nicht hilft:

  • öffnen/schließen SSMS
  • Verschieben Sie die Datei von der Wurzel auf einige Ordner und Berechtigungen erteilen zu diesem Ordner
  • Verwendung TSQL-Skript zur Wiederherstellung der Datenbank statt SSMS
+0

Ich habe 'Read & execute',' Ordnerinhalt auflisten' und 'Lese' Berechtigungen auf' \ Benutzer' Benutzergruppe gegeben und dann hat es für mich funktioniert. Die Gewährung von Berechtigungen für den 'NT Service \ MSSQLServer' war ebenfalls hilfreich. – RBT

+0

Die gleichen Zugriffsberechtigungen für den integrierten 'Everyone'-Benutzer geben auch die gleiche Möglichkeit. – RBT

+0

Für die benannte SQL Server-Instanz hat das Dienstkonto das Format 'NT Service \ MSSQL $ ' – RBT

Verwandte Themen