Oracle12C:drop table后,恢复表数据

前段时间,有个好友作死,不小心

删了自己的数据库,然后他找数据恢复的,

别人报价:由于有点技术难度,这样吧!一张表:7500块,好不?

我朋友:......你怎么不去抢?!

我:......

哎,为了防止自己哪天手贱 删了数据库,所以匆忙学了表 恢复的方法


一般oracle 删了数据库后,还是有闪回的,但是他的数据库是 mongodb


一、先创建表

-- 建表
create table student_score(
    name varchar2(8),class varchar2(10),--班级
    subject varchar2(8),--学科
    grade int			--分数
);


插入一点数据:


-- 插入数据
insert into student_score values
('小明','121','语文',88);
insert into student_score values
('小明','数学',75);
insert into student_score values
('小明','英语',40);
insert into student_score values
('小红',95);
insert into student_score values
('小红',55);
insert into student_score values
('小红',60);
insert into student_score values
('小白','122',70);
insert into student_score values
('小白',79);
insert into student_score values
('小白',66);
insert into student_score values
('小黑',69);
insert into student_score values
('小黑',99);
insert into student_score values
('小黑',77);


select * from student_score



二、删表

drop table student_score;


三、查看数据库表创建信息:

--1、查询表创建时间

select object_name,created
from all_objects
where object_type = 'table'
 and object_name ='student_score'
order by created desc;


四、查看回收站中表

select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin;

recycle bin : 回收站




我的表:student_score 还在 回收站,晚了就不行了


五、恢复表

找到你bin开头的序号

sql>flashback table test_drop to before drop;  或

sql>flashback table "BIN$zGmbX+sxT2S3YtdqJWNa5g==$0" to before drop;


这样就OK了!


六、恢复索引 (呃,我这里没有索引呢)

索引名字:index_name

select INDEX_NAME from user_indexs where table_name='STUDENT_score'
BIN$+NGfT5GYSeCeD10HkIaVsw==$0
虽然看起来表已经恢复了,但是索引恢复的有点问题,恢复出来的索引名称不是IND_TEMP1,故我们还要手动完成索引名修改。

alter index "BIN$+NGfT5GYSeCeD10HkIaVsw==$0" rename to IND_TEMP1;
好了,祝你们顺利恢复表数据!

相关文章

数据库版本:11.2.0.4 RAC(1)问题现象从EM里面可以看到,在23号早上8:45~8:55时,数据库等待会话暴增...
(一)问题背景最近在对一个大约200万行数据的表查看执行计划时,发现存在异常,理论上应该返回100多万...
(一)删除备份--DELETE命令用于删除RMAN备份记录及相应的物理文件。当使用RMAN执行备份操作时,会在RM...
(1)DRA介绍 数据恢复顾问(Data Recovery Advise)是一个诊断和修复数据库的工具,DRA能够修复数据文...
RMAN(Recovery Manager)是Oracle恢复管理器的简称,是集数据库备份(backup)、修复(restore)和恢复...
(1)备份对象 可以使用RMAN进行的备份对象如下: --整个数据库:备份所有的数据文件和控制文件; --数...