创建数据库快照
注意 |
---|
有关此过程的示例,请参阅本节后面的示例 (Transact-SQL)。 |
-
根据源数据库的当前大小,确保有足够的磁盘空间存放数据库快照。数据库快照的最大大小为创建快照时源数据库的大小。 有关详细信息,请参阅查看数据库快照的稀疏文件大小 (Transact-SQL)。
-
使用 AS SNAPSHOT OF 子句对文件执行 CREATE DATABASE 语句。创建快照需要指定源数据库的每个数据库文件的逻辑名称。 语法如下:
CREATE DATABASE database_snapshot_name
ON
(
NAME = logical_file_name,
FILENAME = 'os_file_name'
) [ ,...n]
AS SNAPSHOT OF source_database_name
[;]
其中,source_database_name 是源数据库,logical_file_name 是引用该文件时在 SQL Server 中使用的逻辑名称,os_file_name 是创建该文件时操作系统使用的路径和文件名,database_snapshot_name 是要将数据库恢复到的快照的名称。有关该语法的完整说明,请参阅 CREATE DATABASE (SQL Server Transact-SQL)。
注意 创建数据库快照时,CREATE DATABASE 语句中不允许有日志文件、脱机文件、还原文件和不起作用的文件。
示例 (Transact-SQL)
注意 |
---|
示例中使用的扩展名 .ss 是随意选择的。 |
本部分包含以下示例:
A.对 AdventureWorks 数据库创建快照
此示例对 AdventureWorks 数据库创建数据库快照。 快照名称 AdventureWorks_dbss_1800 及其稀疏文件的名称 AdventureWorks_data_1800.ss 指明了创建时间 6 P.M.(1800 小时)。
CREATE DATABASE AdventureWorks_dbss1800 ON
( NAME = AdventureWorks_Data, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Data\AdventureWorks_data_1800.ss' )
AS SNAPSHOT OF AdventureWorks;
GO
B.对 Sales 数据库创建快照
此示例对 Sales 数据库创建数据库快照 sales_snapshot1200。 此数据库是在 CREATE DATABASE (SQL Server 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\MSSQL12.MSSQLSERVER\MSSQL\data\SPri1dat_1200.ss'),
( NAME = SPri2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\data\SPri2dt_1200.ss'),
( NAME = SGrp1Fi1_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\mssql\data\SG1Fi1dt_1200.ss'),
( NAME = SGrp1Fi2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\data\SG1Fi2dt_1200.ss'),
( NAME = SGrp2Fi1_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\data\SG2Fi1dt_1200.ss'),
( NAME = SGrp2Fi2_dat, FILENAME =
'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\data\SG2Fi2dt_1200.ss')
AS SNAPSHOT OF Sales;
GO