1。至少有一个先前数据库的完整备份被意外删除。
2。数据库的恢复模式为“Full”。
对于这两个前提,会出现三种情况:
场景一、如果满足这两个前提,通过SQL语句只需三步即可恢复(参考文章),无需第三方工具。
a) 备份当前数据库的事务日志:BACKUPLOG[数据库名称]TOdisk=N'备份文件名'WITHNORECOVERY
b) 恢复误删除前的全量备份:RESTOREDATABASE[数据库名称]FROMDISK=N'全量备份文件名'WITHNORECOVERY,REPLACE
c) 将数据库恢复到误删除前的时间点:RESTORELOG[database]FROMDISK=N'第一步的日志备份文件名'WITHSTOPAT=N'误删除前的时间点'。
场景二:如果第一个前提不存在,而第二个前提存在,则需要使用第三方工具。
情况3:如果不满足第二个前提条件,则无法进行恢复。因此,请务必将数据库恢复模式设置为“Full”。
一般来说,在恢复SQL Server误删除的数据时,应该尽快咨询专业的数据恢复公司,因为一旦自己动手,出现问题,就会有很多难以修复的问题稍后效果。