日期:2014-05-17  浏览次数:20390 次

急!一个数据库还原问题
早上数据库误操作了,部分数据冲了,想要恢复到指定时间点


1。数据库恢复模式是完整
2。误操作后,做了一个全备,然后再做了一个LOG备份
3。版本SQL SERVER 2005 SP4

问题发生后,做了一次还原,方式是从源数据库恢复,指定时间点,但是报错:
“System.Data.SqlClient.SqlError:无法打开备份设备 D:\abc.bak 。出现操作系统错误2(error not found)。”
疑为很早以前的备份被删除所以未找到。。。

请教一下接下去该如何操作,谢谢

------解决方案--------------------
当你做全备之后,原有的日志备份顺序链已经被打破了。你的这个操作有误,应该先备份日志尾部,然后还原到误操作之前的时间。但是现在的话只能找到你以前的备份来还原了。
------解决方案--------------------
如果有误操作之前有完整备份,可用日志还原的方法

如果之前没做过完整备份,用 log explorer 4.0以上版本可恢复
------解决方案--------------------
直接用log explorer恢复吧。你只是部分数据,直接log explorer找到误操作语句和被操作的数据,然后恢复回去。
------解决方案--------------------

完全备份 已经截断日志, 在备份日志 已经没有可备份日志。
在用日志备份还原可能已经不行了

2005 的完全备份已经包含日志 , 你从完全备份还原到及时点 看看行吗

如果不行 , log explore 看看


------解决方案--------------------
备份还原机制,就是要一早制定维护方案的,比如定期完整备份和增量备份。
如果不早做备份也行的话,又何必有备份,直接只要还原功能就OK了。
备份还原是一套预险机制,不是用来提供万能后悔药的。
这个教训楼主是吃定了。

------解决方案--------------------
05可以用工具恢复