oracle闪回操作

本文介绍了Oracle数据库的闪回操作,包括如何开启和关闭闪回、设置闪回区、检查闪回状态以及如何进行闪回查询和闪回数据库。通过示例展示了回看表数据、闪回单表及删除操作,强调了回收站与闪回的关系,并提醒慎重使用闪回数据库功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查询闪回归档文档是否开启:archive log list;

 

开启闪回归档文档:在mount状态执行alter database archivelog;

 

设置合理的闪回区:

db_recovery_file_dest:指定闪回恢复区的位置

db_recovery_file_dest_size:指定闪回恢复区的可用空间大小

db_flashback_retention_target:指定数据库可以回退的时间,单位为分钟,默认1440分钟(1天),实际取决于闪回区大小

 

检查是否开启闪回:

select flashback_on from v$database;

 

开启闪回:

mount状态:alter database archivelog;

alter system set db_recovery_file_dest='/home/U01/app/oracle/fast_recovery_area' scope=both;

alter system set db_recovery_file_dest_size=60G scope=both;

alter system set db_flashback_retention_target=4320 scope=both;

alter database flashback on;

 

关闭闪回:

alter database flashback off;

 

闪回操作:

回看某一时间段的表数据

select * from scott.dept as of timestamp to_timestamp('2017-12-14 16:20:00','yyyy-mm-dd hh24:mi:ss');

闪回查询:

 

单表修改闪回操作:

alter table tcl_mrp_header_history enable row movement;

flashback TABLE tcl_mrp_header_history to timestamp TO_TIMESTAMP('20180928 10:00:00','YYYYMMDD HH24:MI:SS');

 

单表被删除闪回操作:

当一个表被drop掉,表会被放入recyclebin回收站,可通过回收站做表的闪回。表上的索引、约束等同样会被恢复

不支持sys/system用户表空间对象,可通过alter system set recyclebin=off;关闭回收站功能

flashback table XXX to before drop;

备注:即使不开始flashback,只要开启了recyclebin,那么就可以闪回DROP表。

但如果连续覆盖,就需要指定恢复的表名,如果已经存在表,则需要恢复重命名。

 

闪回数据库:

flashback database to timestamp to_timestamp('2017-12-14 14:12:46','yyyy-mm-dd HH24:MI:SS');

备注:慎重使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值