还原所有Sql server事务日志但只有一个查询?

时间:2012-10-09 16:36:04

标签: sql-server-2008 database-backups database-restore transaction-log

有没有办法恢复整个事务日志但只有一个查询?

例如您意外执行的删除查询或更新查询?

因为我知道它是可行的,要恢复到某个时间,但如果恶意查询仅影响一个表,并且你不想放松其他表中的更改怎么办?

3 个答案:

答案 0 :(得分:1)

您当然可以使用 ApexSQL日志。您可以恢复已删除或已更新的行,但您也可以选择要恢复的数据。

工具运行良好,非常灵活。许多过滤器可帮助您缩小搜索要恢复的数据的范围。

您可以在这里找到一些信息:How to recover SQL Server data from accidental UPDATE and DELETE operations

答案 1 :(得分:0)

这是我建议您尝试的。实际上这是一个相当常见的场景。

  1. 将数据库还原为服务器上的“第二”副本

    (完整备份或日志备份,让您回到损失点)

  2. 隔离复制数据库中的单个表或数据并将其移至实时数据库

  3. 有多种方法可以完成第2步,例如

答案 2 :(得分:0)

使用SQL Server附带的工具无法做到这一点,但正如您所说,您可以使用时间点恢复来接近。

我相信ApexSqlLog可能允许你这样做,但我从未测试过以这种方式使用它。来自Red Gate的SQL Log Rescue似乎也允许你这样做,而且我使用了Red Gate的许多产品并且对它们一般都非常满意,我也没有尝试过那种特定的产品。