[转载] 误执行MSSQL数据库语句删除数据恢复方法--log explorer使用

[转载] 误执行MSSQL数据库语句删除数据恢复方法--log explorer使用

 

Log explorer是个好工具,极大的补了sqlserver之数据恢复之不足.收集了一些logexplorer的使用 不断更新中

打开log explorer file=>attach log file->选择服务器和登陆方式->connect->
选择数据库->attach->左面对话框中browse->view log->就可以看到log记录了
点击“View DDL Commands”里面就有很多drop table 命令
点击下面的“undo”按钮是生成表结构的语句(create table ....)
点击下面的“Salvage”按钮是生成插入语句的(insert into ...values....)


想恢复的话: 右键log记录 undo transation->选择保存文件名和路径->然后打开该文件到查询分析器里执行
T-sql代码就可以了

例如 如果log是delete table where ...的话,生成的文件代码就是insert table ....

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恢复数据

这个软件必须安装在要恢复数据的SQL服务器上(至少也得在服务器上安装该软件的客户端)

--数据库恢复
LOG EXPLORER是根据日志恢复数据时使用的工具,如果没有了日志文件,则无法将数据恢复到当前时间点。
另外,如果在最近一次备份操作之后,又进行了截断日志的操作,则也无法恢复完整的数据。

你可能感兴趣的:(数据库,log,数据恢复,MSSQL,explorer)