Ich verwende SQL Server 2008 R2 Standard (Version 10.50.1600.1) für meine Produktionswebsite und SQL Server Express Edition mit Advanced Services (v10.50.1600.1) für meinen lokalen Host als Datenbank.
Vor ein paar Tagen stürzte mein SQL Server ab und ich musste eine neue 2008 R2 Express-Version auf meinem lokalen Host installieren. Es hat gut funktioniert, als ich einige ältere Versionen aus der Express Edition wiederhergestellt habe. Wenn ich jedoch versuche, die Datenbank aus einer .bak
Datei wiederherzustellen, die vom Produktionsserver stammt, verursacht dies den folgenden Fehler:
Fehler: Die angegebene Besetzung ist ungültig. (SqlManagerUI)
und wenn ich versuche, die Datenbank mit dem Befehl wiederherzustellen
Use Master
Go
RESTORE DATABASE Publications
FROM DISK = 'C:\Publications.bak'
WITH MOVE 'Publications' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.mdf',--adjust path
MOVE 'AlPublications_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.ldf'
Es wird ein anderer Fehler generiert
Meldung 3154, Ebene 16, Status 4, Zeile 1
Der Sicherungssatz enthält eine Sicherung einer anderen Datenbank als der vorhandenen Datenbank "Veröffentlichungen".
Meldung 3013, Ebene 16, Status 1, Zeile 1
RESTORE DATABASE wird abnormal beendet.
Ich habe die Versionen überprüft. Sie scheinen alle zu mir zu passen, wie im Bild unten gezeigt
Früher konnte ich eine Datenbank von der Standardversion auf die Express Edition wiederherstellen, aber jetzt schlägt sie fehl. Ich habe die Datenbank gelöscht und versucht, sie neu zu erstellen. Das scheitert auch.
Ich bin mir nicht sicher, was ich falsch mache. Ich würde mich über Hilfe in dieser Hinsicht freuen
Das Problem wurde behoben, da die .bak-Datei anscheinend beschädigt war. Als ich es mit einer anderen Datei versuchte, funktionierte es.
,REPLACE
, dem T-SQL-Befehl etwas hinzuzufügen , um die vorhandene AlHabtoorPublications-Datenbank zu überschreiben.