Auf dem SQL-Server ist ein Datenbank-Snapshot eine schreibgeschützte statische Ansicht einer bestimmten Datenbank (Quelldatenbank). Ein Schnappschuss erfasst den aktuellen Status der Datenbank zum Zeitpunkt der Snapshot -Erfassung. Dies bedeutet, dass ein Datenbank -Schnappschuss transaktionell konsistent ist.
Der Datenbank -Snapshot befindet sich in derselben Instanz wie die Quelldatenbank. Obwohl Snapshots eine schreibgeschützte Ansicht in die Daten der Zieldatenbank enthalten. Dies bedeutet, dass die Größe wachsen kann, wenn die Änderungen auf die Quelldatenbank angewendet werden. In ähnlicher Weise wird der Schnappschuss auch beschädigt, wenn die Quelldatenbank beschädigt ist.
Es ist daher wichtig zu beachten.
Stellen Sie sicher, dass Sie die vollständigen oder teilweisen Sicherungen für Ihre Datenbank einnehmen, um vor solchen Fehlern zu schützen.
Lassen Sie uns diskutieren, wie wir einen Datenbank -Snapshot auf dem SQL -Server aufnehmen können.
Beispieldatenbank und Tabelle
Bevor Sie diskutieren, wie Sie einen Schnappschuss einer Datenbank aufnehmen, lassen Sie uns eine Beispieldatenbank für Abbildungszwecke einrichten.
Die Abfragen sind wie im Folgenden angegeben:
Datenbank fallen, wenn existiert Inventar;SQL Server nehmen Datenbank -Snapshot auf
Um eine Snapshot einer bestimmten Datenbank aufzunehmen, verwenden wir die Datenbankabfrage erstellen, gefolgt von der AS Snapshot -Klausel.
Die Syntax ist wie folgt:
Erstellen Sie Datenbankdatenbank_Snapshot_NameUm beispielsweise eine Momentaufnahme der zuvor erstellten "Inventar" -Datenbank zu übernehmen, können wir die folgende Abfrage ausführen:
Erstellen Sie Datenbank inventory_snap aufSQL Server View Database Snapshot - SSMS
Sie können den Datenbank -Snapshot im SQL Server Management Studio anzeigen, indem Sie zu den Datenbanken navigieren - Datenbank -Snapshots.
SQL Server View Database Snapshot - Transact -SQL
Um den Datenbank-Snapshot mithilfe der Transact-SQL-Abfrage anzuzeigen, führen Sie Folgendes aus:
Wählen Sie Name, Database_id, Source_Database_id aus SYS.Datenbanken;Dies sollte die Datenbanken auf dem Server zurückgeben. Die Spalte Source_Database_id zeigt die Quelldatenbank für einen bestimmten Snapshot an.
Ein Beispiel ist wie folgt:
Wie aus der vorherigen Tabelle gezeigt, verweist die Datenbank Inventory_Snap in die Inventar -Datenbank als Quelle.
SQL Server Drop Database Snapshot - Transact -SQL
Um einen Datenbank -Snapshot zu entfernen, können Sie die Abfrage wie im Folgenden dargestellt verwenden:
Drop Database Database_Snapshot_Name;Beispiel:
DROP Database Inventory_Snap;Beachten Sie, dass der Befehl Drop Database alle Verbindungen beendet, die die Datenbank inventory_snap verwenden.
Abschluss
In diesem Beitrag haben Sie erfahren.
Danke fürs Lesen!