SQL检查谁删除了行并恢复它们

时间:2014-02-10 07:32:53

标签: asp.net sql sql-server data-recovery logfile-analysis

对于已删除的记录,我有一个数据库表的主键,我想检查谁删除了这些记录。我的应用使用asp.net成员身份进行用户身份验证没有人登录除我之外的SQL服务器。

我不是DBA所以这对我来说很困惑,找到了this,但这对我来说很困惑。还发现了一些像red-gate和apex-sql这样的工具,但是red-gate只适用于SQL 2000。

1 个答案:

答案 0 :(得分:0)

您可以尝试ApexSQL Log工具尝试恢复已删除的行,但实际上您无法看到删除了哪些行。所有第三方工具只能捕获SQL Server登录

您还应该检查成功恢复的必要先决条件:

  1. SQL Server 2005,2008,2008 R2或2012数据库
  2. 数据库处于完整恢复模式
  3. 数据库自动缩小功能
  4. 事务日志未截断
  5. 备份文件尚未使用任何第三方工具进行压缩和解压缩
  6. 完整数据库备份和事务日志备份是SQL Server本机或本机压缩的SQL Server本机或本机压缩
  7. 存在完整数据库备份以来的整个事务日志备份链。或者是完整的数据库备份,然后是差异数据库备份,然后是事务日志备份链,从那里到您想要恢复的时间点
  8. 如果使用原始数据库备份还原数据库,则必须从原始服务器提供事务日志备份或使用原始服务器mdf和ldf文件还原数据库