Поделиться через


Как создать моментальный снимок базы данных (Transact-SQL)

Пользователь, который может создать базу данных, может создать моментальный снимок базы данных. Единственным способом создания моментального снимка является использование инструкций Transact-SQL.

ms175876.note(ru-ru,SQL.90).gifПримечание.
Рекомендации по присвоению моментальным снимкам базы данных имен, планированию их создания и ограничению их числа см. в разделе Создание моментального снимка базы данных.

Создание моментального снимка базы данных

  1. На основании текущего размера базы данных-источника убедитесь, что на диске достаточно места для хранения моментального снимка базы данных. При создании моментального снимка максимальный размер моментального снимка базы данных равен размеру базы данных-источника.

  2. Используйте инструкцию CREATE DATABASE для файлов с помощью предложения AS SNAPSHOT OF. Создание моментального снимка требует указания логического имени каждого файла базы данных-источника. Сведения о формальном описании синтаксиса создания моментального снимка базы данных см. в разделе CREATE DATABASE (Transact-SQL).

    ms175876.note(ru-ru,SQL.90).gifПримечание.
    При создании моментального снимка базы данных файлы журнала файлы в автономном режиме, восстанавливаемые из копии файлы и нефункционирующие файлы являются недопустимыми в инструкции CREATE DATABASE.

Пример

В этом разделе содержатся примеры создания моментального снимка базы данных.

А. Создание моментального снимка базы данных AdventureWorks

Этот пример создает моментальный снимок базы данных AdventureWorks. Имя моментального снимка AdventureWorks_dbss_1800 и имя файла его разреженного файла AdventureWorks_data_1800.ss указывают на время создания — 18:00.

CREATE DATABASE AdventureWorks_dbss1800 ON
( NAME = AdventureWorks_Data, FILENAME = 
'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_data_1800.ss' )
AS SNAPSHOT OF AdventureWorks;
GO
ms175876.note(ru-ru,SQL.90).gifПримечание.
Расширение SS, использованное в примерах, выбрано произвольно.
Б. Создание моментального снимка базы данных Sales

Этот пример создает моментальный снимок sales_snapshot1200 базы данных Sales. Эта база данных была создана в примере «Создание базы данных, которая содержит файловые группы» в разделе CREATE DATABASE (Transact-SQL).

--Creating sales_snapshot1200 as snapshot of the
--Sales database:
CREATE DATABASE sales_snapshot1200 ON
( NAME = SPri1_dat, FILENAME = 
'C:\Program Files\Microsoft SQL Server\mssql.1\mssql\data\SPri1dat_1200.ss'),
( NAME = SPri2_dat, FILENAME = 
'C:\Program Files\Microsoft SQL Server\mssql.1\mssql\data\SPri2dt_1200.ss'),
( NAME = SGrp1Fi1_dat, FILENAME = 
'C:\Program Files\Microsoft SQL Server\mssql.1\mssql\data\SG1Fi1dt_1200.ss'),
( NAME = SGrp1Fi2_dat, FILENAME = 
'C:\Program Files\Microsoft SQL Server\mssql.1\mssql\data\SG1Fi2dt_1200.ss'),
( NAME = SGrp2Fi1_dat, FILENAME = 
'C:\Program Files\Microsoft SQL Server\mssql.1\mssql\data\SG2Fi1dt_1200.ss'),
( NAME = SGrp2Fi2_dat, FILENAME = 
'C:\Program Files\Microsoft SQL Server\mssql.1\mssql\data\SG2Fi2dt_1200.ss')
AS SNAPSHOT OF Sales
GO

См. также

Задачи

Как просмотреть моментальный снимок базы данных (среда SQL Server Management Studio)
Как вернуть базу данных к моментальному снимку базы данных (Transact-SQL)
Как удалить моментальный снимок базы данных (Transact-SQL)

Другие ресурсы

CREATE DATABASE (Transact-SQL)
Учебник по среде SQL Server Management Studio

Справка и поддержка

Получение помощи по SQL Server 2005