实用的oracle数据库恢复


闪回数据================================================

恢复删除的数据,未删除表

select * from dc_std_code as of timestamp sysdate-5/1440;

查找数据

select * from dc_std_code  as of timestamp to_timestamp('2015-09-30 16:03:00','YYYY-MM-DD hh24:mi:ss');

恢复数据

 insert into dc_std_code    select * from dc_std_code  as of timestamp to_timestamp('2015-09-30 16:03:00','YYYY-MM-DD hh24:mi:ss');


获取当前数据的svn 918515

SELECT CURRENT_SCN FROM V$DATABASE;

查询svn的数据

select * from dc_std_code      as of scn 918515;

恢复数据

 insert into dc_std_code  select * from A as of scn 918515;

闪回数据到某个时间点

alter table DC_STD_CODE enable row movement

flashback table DC_STD_CODE TO TIMESTAMP to_timestamp('2015-09-30 12:00:00','yyyy-mm-dd hh24:mi:ss');



闪回表============================================
查询索引
select index_name from user_indexes where table_name='DC_STD_CODE';
重命名索引
alter index " BIN$3Wv7xMoCTQii0aKtk13Ugg==$1 " rename to t_e_id;   



查询回收站
select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin;

恢复回收站数据 dc_std_code 以下下都能恢复
1. flashback table dc_std_code to before drop;
2. flashback table " BIN$9J3Ps1ACTruS5eKa4cQR9w==$0 " to before drop;

删除后有创建又删除,给重命名   回收站里面的,按照最后一个被删除的先恢复。
FLASHBACK TABLE dc_std_code  TO BEFORE DROP RENAME TO dc_std_code1;
FLASHBACK TABLE dc_std_code  TO BEFORE DROP RENAME TO dc_std_code2;

FLASHBACK TABLE "BIN$04LhcpnoanfgMAAAAAANPw==$0" TO BEFORE DROP RENAME TO dc_std_code1;

FLASHBACK TABLE "BIN$04LhcpnqanfgMAAAAAANPw==$0" TO BEFORE DROP RENAME TO dc_std_code2;


在恢复前先执行查询原索引名称

SELECT OBJECT_NAME, ORIGINAL_NAME, TYPE

  FROM USER_RECYCLEBIN

  WHERE BASE_OBJECT = (SELECT BASE_OBJECT FROM USER_RECYCLEBIN

  WHERE ORIGINAL_NAME = 'DC_STD_CODE2')

  AND ORIGINAL_NAME != 'DC_STD_CODE2';



清理回收站

Purge recyclebin




闪回库==============================================================

开启恢复数据库功能

SHUTDOWN IMMEDIATE

STARTUP MOUNT

查看数据库状态

select name, current_scn, flashback_on from v$database;
alter database flashback on; 
alter system set db_flashback_retention_target=1440 scope=both; 

alter database open; 


数据库恢复

shutdown immediate 

startup mount 

恢复数据库到某一个时间点

Flashback database to timestamp to_timestamp('09-10-14 14:37:05','yy-mm-dd  hh24:mi:ss'); 

Flashback database to scn 947921; 

alter database open; 

恢复记录日志

alter database open resetlogs;  








shutdown immediate
startup mount 
recover database until time '2016-06-30:15:50:00'
alter database open resetlogs

















  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值