使用事务日志回滚事务

THE*_*HEn 12 sql-server transactions

是否可以使用Transactionlog文件为特定记录回滚事务?

我正在使用SQL Server 2005.

Eri*_*ric 10

本地,没有.不过,我相信有一些昂贵的第三方工具可以做到这一点.

或者,您可以从备份恢复数据库,然后RESTORE LOGS使用STOPAT = '6/30/2009 2:30PM'参数恢复到某个时间点.

ApexSQL Log Rescue可用.但是,如果您的日志未处于FULL恢复模式,则如果无法恢复,则可能会出现问题.

  • 建议的方法是使用STOPAT恢复数据库的副本,然后将数据从副本复制到真实数据库中. (2认同)

Jon*_*low 5

据我所知,你的选择是ApexSQL Log(价格昂贵但有免费试用版)或未记录的SQL Server命令,如DBCC Log和fn_dblog.

其中任何一个只有在数据库处于完全恢复模式时才有效,在这种情况下,SQL Server会在事务日志中存储更多详细信息.

此外,我认为这不适用于任何类型的交易.我见过人们使用这种技术来恢复插入,更新,删除,但我真的很确定它是否可以用来恢复说ALTER TABLE或类似的东西.