【问题标题】:Undo changes in SQL Server database since last restore撤消自上次还原以来 SQL Server 数据库中的更改
【发布时间】:2012-08-24 18:00:28
【问题描述】:

假设我从备份 (backup1.bak) 中恢复一个数据库 (例如 db1),然后修改 db1 中的一些表。此时,如果我想摆脱更改并回到恢复状态,我该怎么做?目前,我正在从同一个备份 (backup1.bak) 创建一个新数据库 (db2),这显然效率不高。有人可以建议如何撤消自上次恢复以来 db1 中的更改?

PS:我使用的是 SQL Server 2008 R2。

【问题讨论】:

    标签: sql-server-2008-r2 database-restore


    【解决方案1】:

    还原数据库后,create a database snapshot。

    要撤消您的更改,revert your database back to your snapshot。

    这将使您不必保留您的 .bak 文件...如果您的数据库相对于您将对数据库进行的更改量来说很大,这可能会更有效率。

    【讨论】:

    • 当然请记住,这是一项企业功能,因此仅适用于 Dev、Enterprise 和 Evaluation 版本(以及 Data Center,但该版本自 SQL Server 2012 起已停用)。
    • 谢谢!我将浏览您链接中的信息
    • 要注意的另一件事是,如果您的数据库有任何文件表/文件组,您将无法使用数据库快照恢复功能:( 不幸的是,我很难学到这一点 :(
    【解决方案2】:

    要恢复,您只需从备份 WITH REPLACE, RECOVERY 再次恢复数据库即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-04
      • 1970-01-01
      • 2019-10-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多