错误的批量修改数据库后的恢复问题,急!!!

李志林HZ 2010-08-13 07:40:42
下午错误的操作,修改一个记录的时候没有限制条件,把一个表里面的所有数据都修改了,初步估计有4、5W条记录,下载了LOG EXPLORER3.1版本,想修复数据,一直找不到一个确切的解决办法。请各位知道的说的清楚些!谢谢了!
...全文
186 20 打赏 收藏 举报
写回复
20 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
李志林HZ 2011-01-19
数据库日志有问题,各位说的那些办法都还是可以的,平分和水分吧。
  • 打赏
  • 举报
回复
feixianxxx 2010-08-15
祝楼主好运...
没操作过不敢乱说
  • 打赏
  • 举报
回复
永生天地 2010-08-15
[Quote=引用 17 楼 sunxllee 的回复:]
发现日志的开始时间在数据改变的后面,有办法挽救吗?就是说,比如2点发生的错误操作,3点才是日志的开始时间,有办法回到2点以前吗?
[/Quote]
日志还不是连续的,难道是做过备份时截断了日志
  • 打赏
  • 举报
回复
李志林HZ 2010-08-14
发现日志的开始时间在数据改变的后面,有办法挽救吗?就是说,比如2点发生的错误操作,3点才是日志的开始时间,有办法回到2点以前吗?
  • 打赏
  • 举报
回复
duanzhi1984 2010-08-14
你导出的INSERT是否是你出错的记录呢>

若不是说明你操作的UNDO不是你出错的记录.

你必须找出更新数据的事务!在undo transation
  • 打赏
  • 举报
回复
人鱼传说 2010-08-14
这种事情很的确很雷人呀,我也试过几次,好在我每十分种有个日志备份,Log explorer也不能解决所有问题,除非要还原的记录表没有触发器
  • 打赏
  • 举报
回复
李志林HZ 2010-08-14
刚刚发现,操作日志里面只有一部分数据,而且好死不死的是改过后的数据,这下想一个一个恢复都难了。
  • 打赏
  • 举报
回复
传递氛围 2010-08-13
Log explorer 有过滤选项的,注意看下!

把你操作错误后的表按照时间还有单独一个表过滤出来!数据就好找了!

右键某一条log记录,
选择"undo transation"->"选择保存文件名和路径"->
然后打开该文件到查询分析器里执行T-sql代码就可以了
  • 打赏
  • 举报
回复
xiaoxiao8372 2010-08-13
难道,没有备份!只能用Log explorer有一项undo sql 的操作
  • 打赏
  • 举报
回复
李志林HZ 2010-08-13
2)修改了其中一个表中的部分数据,此时用Log explorer看日志,可以作日志恢复 ------------------------------------这个怎么操作?????????????????
  • 打赏
  • 举报
回复
李志林HZ 2010-08-13
这些回复我都看过,但就是不明白为什么我在操作的时候用UNDO导出来的语句不是UPDATE语句而是INSERT语句?
  • 打赏
  • 举报
回复
Austindatabases 2010-08-13
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服务器上安装服务端,在操作的电脑上安装客户端进行数据恢复
  • 打赏
  • 举报
回复
andkylee 2010-08-13
[Quote=引用 6 楼 sunxllee 的回复:]

不是简单模式。
[/Quote]


还有戏。
  • 打赏
  • 举报
回复
李志林HZ 2010-08-13
不是简单模式。
  • 打赏
  • 举报
回复
andkylee 2010-08-13
恢复模式是简单吗?
要是简单恢复并且没备份的话, 难啊~
  • 打赏
  • 举报
回复
李志林HZ 2010-08-13
我现在是修改了数据,但我现在用UNDO出来的语句多数是INSERT,是什么问题呢?
  • 打赏
  • 举报
回复
htl258_Tony 2010-08-13
1 连接到被删除数据库的Db
打开log explorer 选择 "file"->"attach log file"->选择服务器和登陆方式->"connect"->选择"数据库"->"attach"
2 查看日志
在左面操作项目的对话框中选择"browse"项目->"view log"->就可以看到当前的Log记录了
3 恢复数据
右键某一条log记录,选择"undo transation"->"选择保存文件名和路径"->然后打开该文件到查询分析器里执行
T-sql代码就可以了
例如: 如果log是delete table where ...的话,生成的文件代码就是insert table ....



  • 打赏
  • 举报
回复
李志林HZ 2010-08-13
数据库版本是SQL 2000,可以用LOGEXPLORER看见日志,也可以看见误操作的日志记录,就是不知道怎么恢复日志文件。会的请告诉我了,谢谢!
  • 打赏
  • 举报
回复
李志林HZ 2010-08-13
在线急等,各位会的请告诉我详细的步骤啊!
  • 打赏
  • 举报
回复
相关推荐
发帖
疑难问题
加入

2.1w+

社区成员

MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
申请成为版主
帖子事件
创建了帖子
2010-08-13 07:40
社区公告
暂无公告