假设我db1
从备份 ( backup1.bak
) 中恢复了一个数据库 (比如 ),然后在db1
. 此时,如果我想摆脱更改并回到恢复状态,我该怎么做?目前,我正在db2
从同一个备份 ( backup1.bak
) 创建一个新数据库 (),这显然效率不高。有人可以建议如何撤消自上次还原以来 db1 中的更改?
PS:我使用的是 SQL Server 2008 R2。
假设我db1
从备份 ( backup1.bak
) 中恢复了一个数据库 (比如 ),然后在db1
. 此时,如果我想摆脱更改并回到恢复状态,我该怎么做?目前,我正在db2
从同一个备份 ( backup1.bak
) 创建一个新数据库 (),这显然效率不高。有人可以建议如何撤消自上次还原以来 db1 中的更改?
PS:我使用的是 SQL Server 2008 R2。
还原数据库后,创建数据库快照。
要撤消您的更改,请将您的数据库恢复为您的快照。
这将使您不必保留您的 .bak 文件......如果您的数据库相对于您将对数据库进行的更改量来说很大,那么这可能会更有效。
要恢复,您可以简单地从备份中再次恢复数据库WITH REPLACE, RECOVERY
。