这样的数据可就恢复吗?
我在SQL中的数据库做了完全日志,今天我不小心UPDATE一个字段的数据,可以根据日志恢复吗?
问题点数:20、回复次数:3Top
1 楼zjcxc(邹建)回复于 2006-03-03 20:36:52 得分 20
用第三方工具
Log Explorer for SQL Server v4.0.2
http://js.fixdown.com/soft/8324.htm
注册机产生的是注册码,是两个
用解压缩密码解开后,压缩包里也有一个注册机的
打开log explorer file=>attach log file->选择服务器和登陆方式->connect->
选择数据库->attach->左面对话框中browse->view log->就可以看到log记录了
点击“View DDL Commands”里面就有很多drop table 命令
点击下面的“undo”按钮是生成表结构的语句(create table ....)
点击下面的“Salvage”按钮是生成插入语句的(insert into ...values....)
(以上lynx1111提供)
想恢复的话: 右键log记录 undo transation->选择保存文件名和路径->然后打开该文件到查询分析器里执行
T-sql代码就可以了
例如 如果log是delete table where ...的话,生成的文件代码就是insert table ....
使用经验总结帖:
http://community.csdn.net/Expert/topic/2954/2954818.xml?temp=.9148676Top
2 楼zjcxc(邹建)回复于 2006-03-03 20:36:58 得分 0
log explorer使用的几个问题
1)对数据库做了完全 差异 和日志备份
备份时选用了删除事务日志中不活动的条目
再用Log explorer打试图看日志时
提示No log recorders found that match the filter,would you like to view unfiltered data
选择yes 就看不到刚才的记录了
如果不选用了删除事务日志中不活动的条目
再用Log explorer打试图看日志时,就能看到原来的日志
2)修改了其中一个表中的部分数据,此时用Log explorer看日志,可以作日志恢复
3)然后恢复备份,(注意:恢复是断开log explorer与数据库的连接,或连接到其他数据上,
否则会出现数据库正在使用无法恢复)
恢复完后,再打开log explorer 提示No log recorders found that match the filter,would you like to view unfiltered data
选择yes 就看不到刚才在2中修改的日志记录,所以无法做恢复.
3)
不要用SQL的备份功能备份,搞不好你的日志就破坏了.
正确的备份方法是:
停止SQL服务,复制数据文件及日志文件进行文件备份.
然后启动SQL服务,用log explorer恢复数据
4)
如果你的数据库的日志恢复模型是simple,那就不可能用log explorer恢复
5)
Log explorer必须安装在要恢复数据库的sql server服务器上,或者在sql server服务器上安装服务端,在操作的电脑上安装客户端进行数据恢复
Top
3 楼lamehsl()回复于 2006-03-06 23:28:38 得分 0
太谢谢了Top




