Cómo crear una instantánea de base de datos (Transact-SQL)
El único modo de crear una instantánea de base de datos consiste en usar Transact-SQL. Todos los usuarios que pueden crear una base de datos pueden crear una instantánea de base de datos; sin embargo, para crear una instantánea de una base de datos reflejada, es necesario ser miembro de la función fija de servidor sysadmin.
[!NOTA]
Para conocer las consideraciones sobre la asignación de nombres a las instantáneas de base de datos, cómo establecer la hora de su creación y cómo limitar su número, vea Crear una instantánea de base de datos.
Para crear una instantánea de base de datos
Asegúrese de que hay suficiente espacio en disco para incluir la instantánea de base de datos. El tamaño máximo de una instantánea de base de datos es el tamaño de la base de datos de origen en el momento de la creación de la instantánea.
Emita una instrucción CREATE DATABASE en los archivos que utilicen la cláusula AS SNAPSHOT OF. Para crear una instantánea, se debe especificar el nombre lógico de cada archivo de la base de datos de origen. Para obtener una descripción formal de la sintaxis necesaria para crear una instantánea de base de datos, vea CREATE DATABASE (Transact-SQL).
[!NOTA]
Cuando se crea una instantánea de base de datos, no se permite la presencia de archivos de registro, archivos sin conexión, archivos de restauración e inactivos en la instrucción CREATE DATABASE.
Ejemplo
Esta sección contiene ejemplos de creación de una instantánea de la base datos.
A. Crear una instantánea de la base datos AdventureWorks
En este ejemplo se crea una instantánea de la base datos AdventureWorks. El nombre de la instantánea, AdventureWorks_dbss_1800, y el nombre de archivo de su archivo disperso, AdventureWorks_data_1800.ss, indican la hora de creación: 6 P.M (1800 horas).
CREATE DATABASE AdventureWorks_dbss1800 ON
( NAME = AdventureWorks_Data, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\AdventureWorks_data_1800.ss' )
AS SNAPSHOT OF AdventureWorks;
GO
[!NOTA]
La extensión .ss que se utiliza en los ejemplos es arbitraria.
A. Crear una instantánea de la base datos Sales
En este ejemplo se crea una instantánea de la base datos, sales_snapshot1200, en la base de datos Sales. Esta base de datos se creó en el ejemplo "Crear una base de datos con grupos de archivos," en 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\MSSQL10.MSSQLSERVER\MSSQL\data\SPri1dat_1200.ss'),
( NAME = SPri2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\SPri2dt_1200.ss'),
( NAME = SGrp1Fi1_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\mssql\data\SG1Fi1dt_1200.ss'),
( NAME = SGrp1Fi2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\SG1Fi2dt_1200.ss'),
( NAME = SGrp2Fi1_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\SG2Fi1dt_1200.ss'),
( NAME = SGrp2Fi2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\data\SG2Fi2dt_1200.ss')
AS SNAPSHOT OF Sales
GO
Vea también