1.快照说明
数据库快照是已有数据库的只读静态视图
1.1限制
SQL Server企业版才支持数据库快照
数据库快照必须与源数据库在相同的服务器实例上创建和保留
不能对源数据库进行删除、分离或还原
源数据库文件不可以被删除
由于源数据库的I/O增加,可能对性能造成负面影响
1.2创建
sql
CREATE DATABASE [数据库快照名]
ON
(
NAME = [源数据库文件逻辑名1],
FILENAME = '数据库快照文件要放在的位置.ss',
),
(
NAME = [源数据库文件逻辑名2],
FILENAME = '数据库快照文件要放在的位置.ss',
)...
AS SNAPSHOT OF [源数据库名];
CREATE DATABASE [数据库快照名]
ON
(
NAME = [源数据库文件逻辑名1],
FILENAME = '数据库快照文件要放在的位置.ss',
),
(
NAME = [源数据库文件逻辑名2],
FILENAME = '数据库快照文件要放在的位置.ss',
)...
AS SNAPSHOT OF [源数据库名];
注意:如果源数据库有多个文件,必须在脚本中一一指出
1.3还原
sql
USE master;
RESTORE DATABASE [数据库名] FROM DATABASE_SNAPSHOT = '数据库快照名';
USE master;
RESTORE DATABASE [数据库名] FROM DATABASE_SNAPSHOT = '数据库快照名';
注意:必须切换到master或其他数据库,才可以进行快照恢复
1.3删除
sql
DROP DATABASE [数据库快照名];
DROP DATABASE [数据库快照名];