好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

oracle数据恢复

oracle数据恢复

 

oracle 数据恢复 drop del

1、delete后恢复

最好是立即进行恢复

   insert into mytest 

   ( select * 

     from mytest as of timestamp to_timestamp('2013-07-11 15:18:04','yyyy-mm-dd hh24:mi:ss'))

2 drop table 恢复

a 先确保  show parameter recyclebin 状态是 on

 

b select * from recyclebin / show recyclebin

 

  select * from recyclebin  where original_name='MYTEST';

 

c、如果有对应的表,则进行恢复

  flashback table mytest to before drop

  

ok,搞定

 

其他sql语句总结

 清空回收站

  purge recyclebin;

 清空所有用户的回收站

  purge dba_recyclebin;

 

 批量生成数据

 create table mytest as

 select rownum as id,

 to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as inc_time,

 trunc(dbms_random.value(0,1000)) as random_id,

 dbms_random.string('x',20) as random_string

 from dual

 connect by level<=1000;

 

 查询可用空间

 SELECT text,view_name FROM dba_views WHERE view_name='DBA_FREE_SPACE';

 select text,view_name from dba_views

 

 查询当前的scn

 select dbms_flashback.get_system_change_number from dual;

 

  -- 548966

 

查询符合条件的scn,并且保持到临时表

 

create table scn_temp(count int,scn int);

 

declare

i int :=548000;

begin

for i in 548000 .. 548966 loop

insert into scn_temp(scn)values(i);

update scn_temp  set count=(

 select count(*) from ccc as of scn i) where scn=i;

end loop;

end;

 

 

//推荐使用这种方式

select * from ccc as of timestamp to_timestamp('2013-07-12 00:09:22','yyyy-mm-dd hh24:mi:ss');

 

 

 

 删除索引

 drop index "index_bbb";//不能少了引号

查看更多关于oracle数据恢复的详细内容...

  阅读:35次