Vorgehensweise: Erstellen einer Datenbankmomentaufnahme (Transact-SQL)
Ein Datenbanksnapshot kann nur mithilfe von Transact-SQL erstellt werden. Jeder Benutzer, der eine Datenbank erstellen kann, kann auch einen Datenbanksnapshot erstellen. Ein Snapshot einer Spiegeldatenbank kann jedoch nur von Mitgliedern der festen Serverrolle sysadmin erstellt werden.
Hinweis |
---|
Hinweise zum Benennen von Datenbankmomentaufnahmen, zum zeitlichen Planen der Momentaufnahmeerstellung und zum Begrenzen ihrer Anzahl finden Sie unter Erstellen einer Datenbankmomentaufnahme. |
So erstellen Sie eine Datenbankmomentaufnahme
Prüfen Sie die aktuelle Größe der Quelldatenbank, damit Sie sicher sein können, dass der verfügbare Festplattenspeicher zum Speichern der Datenbankmomentaufnahme ausreicht. Die maximale Größe einer Datenbankmomentaufnahme beläuft sich auf die Größe der Quelldatenbank zum Zeitpunkt der Momentaufnahmeerstellung.
Geben Sie eine CREATE DATABASE-Anweisung für die Dateien aus, und verwenden Sie dabei die AS SNAPSHOT OF-Klausel. Bei der Erstellung einer Momentaufnahme müssen die logischen Namen aller in der Quelldatenbank enthaltenen Datenbankdateien angegeben werden. Eine formale Beschreibung der Syntax zur Erstellung einer Datenbankmomentaufnahme finden Sie unter CREATE DATABASE (Transact-SQL).
Hinweis Wenn Sie eine Datenbankmomentaufnahme erstellen, darf die CREATE DATABASE-Anweisung weder Protokolldateien, noch Offlinedateien, Wiederherstellungsdateien oder außer Kraft gesetzte Dateien enthalten.
Beispiel
Dieser Abschnitt enthält Beispiele für das Erstellen einer Datenbankmomentaufnahme.
A. Erstellen einer Momentaufnahme für die AdventureWorks2008R2-Datenbank
In diesem Beispiel wird eine Datenbankmomentaufnahme für die AdventureWorks2008R2-Datenbank erstellt. Der Name der Momentaufnahme, AdventureWorks2008R2_dbss_1800, und der Dateiname der entsprechenden Datei mit geringer Dichte, AdventureWorks2008R2_data_1800.ss, geben als Erstellungszeit 18:00 Uhr an.
CREATE DATABASE AdventureWorks2008R2_dbss1800 ON
( NAME = AdventureWorks2008R2_Data, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\AdventureWorks2008R2_data_1800.ss' )
AS SNAPSHOT OF AdventureWorks2008R2;
GO
Hinweis |
---|
Die in den Beispielen verwendete Erweiterung SS ist willkürlich. |
B. Erstellen einer Momentaufnahme für die Sales-Datenbank
In diesem Beispiel wird eine Datenbankmomentaufnahme, sales_snapshot1200, für die Sales-Datenbank erstellt. Diese Datenbank wurde im Beispiel für das Erstellen einer Datenbank mit Dateigruppen unter CREATE DATABASE (Transact-SQL) erstellt.
--Creating sales_snapshot1200 as snapshot of the
--Sales database:
CREATE DATABASE sales_snapshot1200 ON
( NAME = SPri1_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\SPri1dat_1200.ss'),
( NAME = SPri2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\SPri2dt_1200.ss'),
( NAME = SGrp1Fi1_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\mssql\data\SG1Fi1dt_1200.ss'),
( NAME = SGrp1Fi2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\SG1Fi2dt_1200.ss'),
( NAME = SGrp2Fi1_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\SG2Fi1dt_1200.ss'),
( NAME = SGrp2Fi2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\data\SG2Fi2dt_1200.ss')
AS SNAPSHOT OF Sales
GO
Siehe auch
Aufgaben
Vorgehensweise: Wiederherstellen einer Datenbank bis zu einer Datenbankmomentaufnahme (Transact-SQL)