博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle数据表被drop后的恢复
阅读量:6515 次
发布时间:2019-06-24

本文共 710 字,大约阅读时间需要 2 分钟。

对于被drop的表和索引,都会存放在回收站中(所以对于生产的数据库必须设置好回收站功能)

 

由于本次生成环境在drop掉已有的表后,又一次创建了很多的表,全部直接还原的话会提示原有对象存在,表名反复。当中解决方法是:先重命名已经存在的表名,让后还原删除的表,最后进行数据合并

 

重命名已经存在的表

 

spool bak.txt

select 'alter table '||t.original_name||' rename to '||t.original_name||'_bak;',' select count(*) from '||t.original_name||'_bak;' from user_recyclebin t;

spool off

 

那么会把改动表名的语句存放在bak.txt中,我们能够略微调整一下直接执行这个脚本或者是拷贝的sqlplus中执行也能够

 

由于考虑到数据的合并,对于 count*)大于的数据须要进行数据的合并,否则能够不用管它

 

使用还原数据库的命令进行数据还原

spool bak2.txt

select ' flashback table  '||t.original_name|| ' to before drop'  from user_recyclebin t;

spool off

 

运行这个bak2.txt中保存的脚本,能够进行数据的还原

 

 

进行数据库中表数据的合并()

 

须要注意的有的数据是直接insert to 就能够,可是有的本来是计时器的功能,仅仅须要对数量进行累加就能够,还有的数据时由于没有重建了一份一样的数据,对于这种数据就不须要管他

 

重建索引 

转载地址:http://phafo.baihongyu.com/

你可能感兴趣的文章
汇编语言的应用
查看>>
安德鲁斯----多媒体编程
查看>>
中断小笔记
查看>>
FreeBinary 格式说明
查看>>
使用Spring Cloud和Docker构建微服务
查看>>
九州云实战人员为您揭秘成功部署OpenStack几大要点
查看>>
CloudCC:智能CRM究竟能否成为下一个行业风口?
查看>>
追求绿色数据中心
查看>>
Web开发初学指南
查看>>
探寻光存储没落的真正原因
查看>>
高通64位ARMv8系列服务器芯片商标命名:Centriq
查看>>
构建智能的新一代网络——专访Mellanox市场部副总裁 Gilad Shainer
查看>>
《数字视频和高清:算法和接口》一导读
查看>>
《中国人工智能学会通讯》——6.6 实体消歧技术研究
查看>>
如何在Windows查看端口占用情况及查杀进程
查看>>
云存储应用Upthere获7700万美元股权债务融资
查看>>
洗茶,你误会了多少年?
查看>>
贵阳高新区力争打造“千亿级大数据园区”
查看>>
安防众筹不止于卖产品 思维拓展刺激消费
查看>>
艾特网能获2016APCA用户满意品牌大奖
查看>>