一.闪回技术简介
为了能够从任何的逻辑操作中迅速恢复,Oracle推出了闪回技术
1.闪回数据库技术:允许复原整个数据库到某个时间点,从而撤销自该时间以来的所有更改
2.闪回表技术:可以确保数据表能够恢复到之前的某一个时间点上
3.闪回丢弃技术:可以从其中恢复北DRO掉的表或者索引
4.闪回版本查询技术:可以看到特定的表在某个时间段内所进行的任何修改操作
5.闪回事务查询技术:可以在事务级别上检查数据库的任何改变
6.闪回数据库归档技术:可以查询特定对象在任意时间点的数据。
二.闪回数据库
alter system set db_recovery_file_dest_size=4g scope=both;
例子:
connect system/1qaz2wsx as sysdba;
archive log list;
shutdown immediate;
startup mount;
alter database archivelog;
alter system set db_flashback_retention_target = 7200;
alter database flashback on;
alter database open;
三.闪回表
1.闪回表命令的语法
connect scott/1qaz2wsx;
create table dept2 as select * from dept;
select * from dept2;
set time on;
delete from dept2 where deptno = 38;
commit;
alter table dept2 enable row movement;
flashback table dept2 to timestamp to_timestamp('2012-01-09 16:33:17','yyyy-mm-dd hh24:mi:ss');
2.闪回表的应用
四.闪回丢弃技术
1.回收站简介
例子:
connect scott/1qaz2wsx;
create table dept_copy as select * from dept;
select * from tab;
drop table dept_copy;
select object_name,original_name from user_recyclebin;
flashback table dept_copy to before drop;
2.回收站应用
五.其它闪回技术
1.闪回版本查询
采用SELECT 语句带flashback_query子句实现
2.闪回事务查询
主要用到flashback_transaction_query视图中获取事务的历史操作
3.闪回数据归档技术
connect hr/hr;
--创建employees的副本
create table employees_copy as select * from employees;
--查询数据字典,看employees_copy的存在
select * from tab;
--删除掉employees_copy
drop table employees_copy;
--查询回收站信息
select object_name,original_name from user_recyclebin;
--闪回恢复数据表
flashback table employees_copy to before drop;
网友评论