三种方法快速恢复误删oracle数据库

本篇文章给大家带来了关于Oracle的相关知识,其中主要介绍了关于误删oracle数据库中的数据,在不考虑全库备份和利用归档日志情况,怎样快速恢复数据的相关问题,下面一起来看一下,...

本篇文章给大家带来了关于Oracle的相关知识,其中主要介绍了关于误删oracle数据库中的数据,在不考虑全库备份和利用归档日志情况,怎样快速恢复数据的相关问题,下面一起来看一下,希望对大家有帮助。

三种方法快速恢复误删oracle数据库插图1

误删oracle数据库中的数据,在不考虑全库备份和利用归档日志情况,怎样快速恢复数据呢?

下面介绍3种方法。

1. 利用oracle提供的闪回方法进行数据恢复,适用于delete删除方式

首先获取删除数据的时间点:

select*fromv$sqlwheresql_textlike'%table_name%';//1

根据结果中的sql_text内容,找到delete执行语句对应的删除时间点,执行下面语句查询出删除的数据。

select*fromtable_nameasoftimestampto_timestamp(‘删除时间点’,‘yyyy-mm-ddhh24:mi:ss’)where(删除时的条件)//12

检查数据无误后,执行下面操作,将数据插回原表中。注意主键不重复

insertintotable_nameselect*fromfromtable_nameasoftimestampto_timestamp(‘删除时间点’,‘yyyy-mm-ddhh24:mi:ss’)where(删除时的条件)//123

2. 利用oracle虚拟回收站功能

原理是因为oracle数据库在删除表时会将删除信息存放于某虚拟回收站中而非直接清空,在此种状态下数据库标记该表的数据库为可以复写,所以在该块未被重新使用前依然可以恢复数据。该方法多用于drop删除。

首先查询user_table视图,找到被删除的表:

selecttable_name,droppedfromuser_tables;selectobject_name,original_name,type,droptimefromuser_recyclebin;//12

注意此时的,object_name和original_name就是回收站存放的表名和原来删除的表名,如果表名没有被重新命名,可以通过下面语句进行恢复:

flashbacktableoriginal_nametobeforedrop;//1

如果不知道源表名,或者需要重新命名新的表名存放数据,则可以通过回收站中的object_name进行恢复,命令如下:

flashbacktableobject_nametobeforedropnew_table_name;//1

3. 用oracle数据库的闪回功能可以将数据库恢复到过去某一状态

注意,此时是整库恢复,具体语法如下:

SQL>alterdatabaseflashbackonSQL>flashbackdatabasetoscnSCNNO;SQL>flashbackdatabasetotimestampto_timestamp(‘frombyte2021-09-0223:59:59’,‘yyyy-mm-ddhh24:mi:ss’);//123

4. 彻底删除数据

如果确定需要删除的数据又不想无谓的占用空间,我们可以使用以下3种方式:

采用truncate方式进行截断。(不能进行数据回恢复)

在drop时加上purge选项:drop table table_name purge

通过删除recyclebin区域来永久性删除表 ,drop table table_name cascade constraints purge table table_name;

5. 关于清空回收站

删除当前用户回收站

purge recyclebin;

删除全体用户在回收站的数据

purge dba_recyclebin;

产品猿社区致力收录更多优质的商业产品,给服务商以及软件采购客户提供更多优质的软件产品,帮助开发者变现来实现多方共赢;

日常运营的过程中我们难免会遇到各种版权纠纷等问题,如果您在社区内发现有您的产品未经您授权而被用户提供下载或使用,您可按照我们投诉流程处理,点我投诉

本文来自用户发布投稿,不代表产品猿立场 ;若对此文有疑问或内容有严重错误,可联系平台客服反馈;

部分产品是用户投稿,可能本文没有提供官方下下载地址或教程,若您看到的内容没有下载入口,您可以在我们产品园商城搜索看开发者是否有发布商品;若您是开发者,也诚邀您入驻商城平台发布的产品,地址:点我进入

如若转载,请注明出处:https://www.chanpinyuan.cn/27556.html;
(0)
上一篇 2022年11月25日 下午4:17
下一篇 2022年11月25日 下午4:17

相关推荐

发表回复

登录后才能评论
分享本页
返回顶部