ist es möglich, einen MSSQL-Server wiederherzustellen, indem man sein Verzeichnis/seine Datendateien kopiert? Meine Festplatte ist beschädigt und ich konnte das Verzeichnis C:\Programme (x86)\SQL Server 2008\MSSQL\MSSQL10.MYDATABASE retten. Ich habe es in meine neue Installation kopiert und versucht, den Dienst zu starten, aber es ist fehlgeschlagen. Ist es möglich, die Datenbank irgendwie wiederherzustellen?
Ich verwende Windows 7 64-Bit und MS SQL Server 2008 R2.
Antwort1
Um eine Datenbank aus den Dateien wiederherzustellen, benötigen Sie die Datendatei (MDF, manchmal ist auch NDF vorhanden) und die Protokolldatei (LDF).
- Starten Sie SQL Server Management Studio
- Klicken Sie mit der rechten Maustaste aufDatenbankenKnoten
- WählenAnfügen
- KlickenHinzufügen
- Wählen Sie die gespeicherte MDF-Datei aus
- Die LDF-Datei sollte automatisch hinzugefügt werden. Andernfalls wird die Meldung „Nicht gefunden“ angezeigt und Sie müssen die Datei manuell hinzufügen, indem Sie auf die Auslassungspunkte-Schaltfläche klicken.
Wenn dies fehlschlägt, versuchen Sie, nur die MDF-Datei anzuhängen, mit demsp_attach_single_file_dbFunktion
EXEC sp_attach_single_file_db @dbname = 'AdventureWorks2012Restored' ,
@physname = N'D:\ApexSQL\backups\CS2.mdf';
Wenn dies fehlschlägt, ist die MDF-Datei möglicherweise beschädigt. Sie können ein Drittanbietertool ausprobieren, das die MDF-Datei liest und Ihre Daten wiederherstellt
ApexSQL Wiederherstellenist ein Tool, das eine beschädigte MDF-Datei lesen, alle Objekte neu erstellen und Tabellendatensätze wiederherstellen kann. Es kann ein T-SQL-Skript erstellen oder eine Kopie der Datenbank erstellen.
Haftungsausschluss: Ich arbeite für ApexSQL als Support-Ingenieur
Antwort2
Sie hätten nicht das gesamte Verzeichnis kopieren sollen. Sie hätten nur die Datenbank- und Transaktionsprotokolldateien für die betreffende Datenbank kopieren sollen.
Deinstallieren Sie SQL Server und installieren Sie es erneut auf dem Zielhost.
Kopieren Sie die Datenbank- und Transaktionsprotokolldateien für die betreffende Datenbank auf den Zielhost.
Hängen Sie die Datenbank an.
Antwort3
Genau das, was @joeqwerty gesagt hat, nur ein paar Tipps für die Zukunft.
Am besten bewahren Sie Datenbankdateien (.MDF) auf einem anderen Laufwerk als Protokolldateien (.LDF) auf. Es wird außerdem empfohlen, alle Datenbanken nicht auf dem Laufwerk C: zu speichern. TEMPDB funktioniert am besten, wenn es sich auf einem eigenen Laufwerk befindet.
Hier ist ein Artikel, wie man System-DBs verschiebtTech Net