Snapshot--使用Snapshot来还原数据库

在数据库升级时,为防止升级失败造成的影响,我们通常需要:

1.准备回滚脚本,用于失败后回滚

2.在升级前备份数据库,用于失败后恢复

但回滚脚本需要花费很长时间准备,而备份恢复会导致数据库长时间不可用,为解决此类问题,可以使用数据库快照,数据库快照生成速度和还原速度都远快于备份,且操作简单。

 

Snapshot--使用Snapshot来还原数据库
--==========================================================
--创建数据库快照
CREATE  DATABASE BackupTestDB_SNAP ON (NAME=BackupTestDB,
FILENAME=D:\DB\BackupTestDB.snap)
,(NAME=BackupTestDB_F1,FILENAME=D:\DB\BackupTestDB_F1.snap)
AS SNAPSHOT OF BackupTestDB;
GO
--==========================================================
--在源数据库中增加表TB4
USE BackupTestDB
GO
SELECT 1 AS ID INTO TB4
--==========================================================
--使用快照还原数据库BackupTestDB
--还原结束后发现表TB4已不存在
USE master
GO
RESTORE DATABASE BackupTestDB
FROM DATABASE_SNAPSHOT=BackupTestDB_SNAP

Snapshot--使用Snapshot来还原数据库

Snapshot--使用Snapshot来还原数据库

上一篇:常用脚本--查看数据库最近备份


下一篇:使用buildbot实现持续集成(转载)