Einführung
Die SQL Server Fehlermeldung 3156 steht im Zusammenhang mit einer Datenbankwiederherstellung. Wir zeigen verschiedene Alternativen zur Lösung der Fehlermeldung auf.
Die Fehlermeldung lautet wie folgt:
SQL-Fehler 3156: SQL-Fehler 3156: Die Datei ‘Dateiname’ kann nicht in ‘C:\Programmdateien\Microsoft SQL Server\MSSQL.3\MSSQL\FTData\Name’ wiederhergestellt werden. Verwenden Sie WITH MOVE, um einen gültigen Speicherort für die Datei zu ermitteln. |
Sie können auch die unten aufgeführten einfachen Schritte befolgen.
Anforderungen
Der aktuelle Artikel ist für jede SQL Server-Version geeignet.
- SQL Server-Installationsprogramm
- SSMS-Installationsprogramm
Erste Schritte
Als Erstes müssen Sie prüfen, ob der Benutzer, der die Datei wiederherstellt, über Berechtigungen für die angegebene Datei verfügt.
Um dies zu testen, kopieren Sie im Windows Explorer den in der Fehlermeldung genannten Pfad und fügen ihn ein:
Wenn Sie keine Berechtigungen haben, stellen Sie einen anderen Pfad mit den Berechtigungen für den Ordner wieder her oder gewähren Sie dem Benutzer die Berechtigungen für den Ordner.
Um den Wiederherstellungspfad zu ändern, gehen Sie im Fenster Datenbank wiederherstellen auf die Registerkarte Dateien:
Wenn Sie das Kontrollkästchen Alle Dateien in den Ordner verschieben aktivieren, können Sie den Wiederherstellungsort an einen gültigen Ort ändern.
Wenn Sie die Benutzeroberfläche nicht mögen, können Sie die T-SQL-Befehle verwenden:
USE [master]
RESTORE DATABASE [databasename] FROM DISK = N'C:\Programme\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Backup\aw.bak' WITH FILE = 1,
MOVE N'filename' TO C:\Program Files\Microsoft SQL Server\MSSQL.3\MSSQL\FTData\Name'.mdf',
MOVE N'Logfile_log' TO N'C:\sql\logfile_log.ldf', NOUNLOAD, STATS = 5
Der Code verwendet die MOVE-Klausel, um die Dateien an einen anderen Ort zu verschieben.
Wenn Ihr Backup beschädigt ist, können Sie das Stellar Toolkit for MS SQLSolution verwenden. Diese Software umfasst drei Module:
- MS SQL-Datenbank-Software repariert SQL Server Datendateien (MDF und NDF)
- MS SQL Password Recovery Software stellt verlorene SQL Server Passwörter (User und SA) wieder her.
- MS SQL Backup Recovery Software stellt Daten aus beschädigten oder korrupten.BAK-Dateien wieder her. In diesem Artikel werden wir diese verwenden.
Öffnen Sie die Option Extract from MS SQL Backup und wählen Sie die bak-Datei aus. Die Sicherungsdateien haben in der Regel die Erweiterung bak und werden in der Regel im Ordner Programmdateien\SQL Server\MSSQLXX.MSSQLSERVER\MSSQL\Backup gespeichert, Sie können die Sicherungen jedoch anpassen und an einem anderen Ort speichern, wenn Sie möchten.
Es gibt auch eine Option zum Durchsuchen des Backups, wenn Sie nicht wissen, wo es sich befindet. Die Option Suchen in gibt an, wo die Suche beginnen soll, und die Option Suchen im Ordner startet die Suche:
Sobald Sie die Sicherungsdatei ausgewählt haben, drücken Sie die Schaltfläche Scannen:
Mit der Schaltfläche “Scannen” wird die Reparatur des Backups gestartet, und die Software gibt Ihnen ein Fenster zur Auswahl des Backup-Sets. Sie können den Namen des Sicherungssatzes und das Datum überprüfen:
Wenn Sie das Backup-Set ausgewählt haben, klicken Sie auf die Schaltfläche Weiter und wählen Sie die SQL Server-Version aus:
Sie können mit jeder SQL Server-Version arbeiten, und es gibt auch Optionen für die Arbeit mit Dateien, die mit einer Version erstellt und in eine neue Version konvertiert wurden. Drücken Sie OK.
Die Software zeigt alle verfügbaren SQL Server-Objekte innerhalb des Backups, einschließlich Tabellen, Ansichten, Synonyme, gespeicherte Prozeduren, Trigger, Sequenzen, Regeln, Standard, Assemblies und mehr:
Es ist möglich, eine Vorschau der Daten in Tabellen zu erstellen:
Sie können auch den T-SQL-Code der Ansichten überprüfen:
Wenn Sie die Objekte ausgewählt haben, klicken Sie auf die Schaltfläche Speichern, um die Informationen zu speichern.
Es gibt 4 Optionen:
Zum einen können die Informationen in SQL Server (MSSQL) gespeichert werden, zum anderen können sie in einem Format mit durch Kommata getrennten Werten (CSV), in Hypertext Markup Language (HTML) oder Excel (XLS) gespeichert werden. In diesem Beispiel werden wir in MSSQL speichern.
Sie können die Sicherung in einer neuen Datenbank oder in einer bestehenden Datenbank (Live-Datenbank) speichern. Außerdem können Sie den Instanznamen und den Authentifizierungstyp angeben. Sie können den Standardspeicherort verwenden oder auch einen benutzerdefinierten Speicherort angeben:
Nach Abschluss des Speichervorgangs können Sie die wiederhergestellte Datenbank in SQL Server sehen:
Schlussfolgerung
In diesem Artikel zeigen wir verschiedene Möglichkeiten zur Lösung der SQL Server Fehlermeldung 3156. Wir zeigen, wie man den Speicherort der wiederhergestellten Datenbank verschiebt und auch einen Weg, um die Sicherung zu reparieren, wenn sie beschädigt ist.
Schließlich zeigen wir, wie man Stellar Toolkit for MS SQL verwendet, um eine beschädigte Sicherung wiederherzustellen und die Informationen wiederherzustellen. Es ist möglich, in MSSQL, HTML, Excel oder CSV wiederherzustellen.
Was this article helpful?