利用oracle提供的闪回方法,如果在删除数据后还没做大量的操作(只要保证被删除数据的块没被覆写),就可以利用闪回方式直接找回删除的数据!
射阳网站建设公司创新互联,射阳网站设计制作,有大型网站制作公司丰富经验。已为射阳上千家提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的射阳做网站的公司定做!
基于oracle数据文件和控制文件的恢复,只要数据文件还在 就可以利用PRM FOR Oracle工具从中抽取出有用数据。
PRM可以再无备份的情况下恢复被truncated掉的表,也可以恢复无法打开的Oracle数据库(Alter database open失败)中的数据。 PRM是图形化增强版的Oracle DUL工具,同时具备很多Oracle DUL不具备的特性。
而且PRM无需学任何新命令。
对于误操作DROP TABLE的数据恢复
D公司的应用开发人员在ASM存储环境下,在没有任何备份的情况下DROP了系统中一张核心应用表,此时第一时间采用PRM可以恢复该DROP掉数据表的绝大部分数据。10g以后提供了 recyclebin回收站特性,可以首先通过查询DBA_RECYCLEBINS视图来确定被DROP掉的表是否在回收站中,如果在则优先通过回收站flashback to before drop,如果回收站中也没有了,则第一时间使用PRM恢复。
恢复简要流程如下:
首先将被DROP掉的数据表所在的表空间OFFLINE
通过查询数据字典或者LOGMINER找到被DROP掉数据表的DATA_OBJECT_ID,如果此步骤中得不到这个DATA_OBJECT_ID,则需要在NON-DICT非字典模式下
启动PRM,进入NON-DICT非字典模式,并加入被DROP掉数据表所在的表空间的所有数据文件,之后SCAN DATABASE+SCAN TABLE from Extent MAP
通过DATA_OBJECT_ID定位到展开对象树形图中对应的数据表,采用DataBridge模式插回到源数据库中
drop table 表名(彻底删除表)
delete from 表名(后面不跟where语句,则也删除表中所有的数据)结构保留。
这个回滚段中保留数据,但不降水位。
truncate table 表名(清除数据,降水位,不进回滚段)结构保留。
想要回滚数据,只能开启闪回进行但百万条以上不行。
理论上是可以,
window上卸载oracle,自带的卸载卸不干净的,需要进行注册表的清理
看下这个
删除回收站的表是有固定语句的,PURGE RECYCLEBIN。
不过这个语句只能清除当前用户的回收站,其他用户就算是DBA用户,好象也没办法清除其他用户的回收站。