Öffnen einer SQL Server-BAK-Datei (nicht wiederherstellen!)
Habe ich gelesen, VIELE google-Beiträge und StackOverflow zu Fragen, wie Sie zum wiederherstellen einer Datenbank in SQL Server aus .bak-Datei.
Aber keiner von Ihnen erklärt, wie zu LESEN, einfach die Tabellen in die Datenbank-backup.
(Keine, die ich finden konnte, eh?)
Ich will einfach nur, um zu überprüfen, einige alte Informationen, die nun gelöscht wurde, ohne tatsächlich die Wiederherstellung der vollen Datenbank.
Ist das möglich?
.
EDIT:
Wollte ich nur mein T-SQL Lösung für das problem, damit andere es verwenden kann, und ich kann zurück gehen und sehen, es ist 😉
Zunächst erstellte ich eine neue Datenbank namens backup_lookup
und nahm es offline.
Nach dieser konnte ich wieder meine alte Datenbank mydb
auf die neue, ohne jemals das berühren meiner original.
USE master
GO
RESTORE DATABASE backup_lookup
FROM DISK = 'D:\backup\mydb.bak'
WITH REPLACE,
MOVE 'mydb' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup.mdf',
MOVE 'mydb_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup_log.ldf'
GO
Ich hoffe, das hilft 🙂
InformationsquelleAutor der Frage Behrens | 2011-12-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vom SQL Server 2008 SSMS (SQL Server Management Studio), einfach:
Entweder:
Rechten Maustaste, Tasks, Wiederherstellen, Datenbank
Wählen Sie "overwrite=Y" unter Optionen.
Wiederherstellen der Datenbank
PS: noch einmal, ich betone: Sie können ganz einfach tun dies auf einem "scratch-Datenbank" - Sie tun nicht müssen überschreiben Sie die aktuelle Datenbank. Aber Sie tun müssen WIEDERHERSTELLEN.
PPS: Sie können auch das gleiche erreichen mit T-SQL-Befehle, wenn Sie wollte Skript.
InformationsquelleAutor der Antwort paulsm4
Die einzige praktikable Lösung ist wiederherstellen die
.bak
- Datei. Der Inhalt und die Struktur dieser Dateien sind nicht dokumentiert und daher gibt es wirklich keine Möglichkeit (außer eine schreckliche hack) zu bekommen dies funktioniert - definitiv nicht Wert Ihre Zeit und die Mühe!Das einzige Werkzeug, das ich bin mir dessen bewusst, dass Sie als sinnvoll
.bak
Dateien ohne Wiederherstellung Sie ist Red Gate SQL Compare Professional (und die dazugehörige SQL Data Compare), die es erlauben Sie to vergleichen Sie Ihre Datenbank-Struktur vor, die den Inhalt einer.bak
- Datei. Rote-Tor-tools sind absolut wunderbar - sehr empfehlenswert und auch jeden Cent Wert den Sie Kosten!Und ich habe gerade überprüft Ihre Website - es scheint, dass Sie tatsächlich wiederherstellen einer einzelnen Tabelle aus einer
.bak
Datei mit SQL Vergleichen, Pro ! 🙂InformationsquelleAutor der Antwort marc_s
Es gibt keine standard-Weg, dies zu tun. Sie müssen verwenden Sie 3rd-party-tools wie ApexSQL Restore oder SQL-Restore. Diese tools nicht wirklich Lesen Sie die backup Datei direkt. Sie erhalten von SQL Server zu "denken" der backup-Dateien, als wären diese live-Datenbanken.
InformationsquelleAutor der Antwort David Smithers
Nur um meine TSQL-Skript-Lösung:
Erste von allen; fügen Sie eine neue Datenbank mit dem Namen
backup_lookup
.Dann einfach nur dieses Skript ausführen, das einfügen Ihrer eigenen Datenbanken' root-Pfad und backup-Dateipfad
InformationsquelleAutor der Antwort Behrens
Scheint es nicht möglich, die mit SQL Server 2008 allein. Sie brauchen ein Drittanbieter-tool, die helfen, die.
Wird es Ihnen helfen, Ihre .bak wirken wie eine live-Datenbank:
http://www.red-gate.com/products/dba/sql-virtual-restore/
InformationsquelleAutor der Antwort Nonym