SQL2008报错:无法还原日志备份或差异备份,因为没有文件可用于前滚---还原SQLSERVER数据库差异备份

时间:2021-05-13 14:10:58

1.利用SQL MANAGEMENT STUDIO软件来恢复差异备份时遇到的问题

其实要备份,还原最安全最有保障的是完全备份。但是完全备份肯定是需要更多的磁盘空间的开销。尤其是数据量比较大的。比如基数是500M,每天的增长量为10M,那么第一次完全备份是500M,第二次是510M,第三次是520M……成本相应的肯定就增加了很多。如果使用差异备份,那么第一次完备后的差异备份就只是第天所增长的量。能减少很多磁盘的开销。但是还原差异备份比还原完整备份稍微要麻烦一些。

   还原差异备份需要一个完整备份,以及最新一个差异备份文件。

   操作如下。

   选择完整备份文件,在常规操作中选择“覆盖现有数据库(with replce)”与下面的单选项的第二项"[ √ ]不对数据库执行任何操作,不回滚未提交的事务。可以还原其他事务日期(A)。(restore with norecovery"点击确定。会提示还原成功。

   SQL2008报错:无法还原日志备份或差异备份,因为没有文件可用于前滚---还原SQLSERVER数据库差异备份 

   但是现在数据还没有还原到数据库中,数据库会一直显示为以下图显示的状态

    SQL2008报错:无法还原日志备份或差异备份,因为没有文件可用于前滚---还原SQLSERVER数据库差异备份 

    右建再执行还原任务,选择最新的一个差异备份。上面大图所显示的操作不要选择,直接点确定就可以了。数据就完全恢复到数据库了。

2.利用SQL语句进行还原

restore database xxxx from disk='c:\dump\xxxx.bak' with norecovery;
restore log xxxx from disk='c:\dump\xxxxlog.bak' with norecovery;
restore database xxxx with recovery