ORACLE的闪回有三种实现方式
1, 回收站技术
当参数设置为ON的时候可以使用回收站的闪回功能,使用的语法为:
查询该功能开启与否的语法为:
该功能存在以下限制:
1, 需要闪回的对象不能属于系统用户
2, ORACLE并不能保证,删除的对象存在于回收站,也并不能做时间上的保证
2, 使用flahback archive对象
该技术用于特定的对象使用闪回功能。Flashback archive对象需要设置存储的dbf文件,需要绑定表空间,需要设置retention时间,然后再将该对象绑定在数据库对象上。
该技术的实现原理是在对数据库表对象做DML操作前,按照时间来存储一次,也就是拉链数据的存储
3, 使用闪回数据库
需要配置,配置方式如下:
原理:将undo内容存档到FRA区,后面的闪回都是根据这个文件来的。有一个单独的进程,在闪回开启后间断性的跑。
存在的问题:当事物太过于频繁的时候,这个日志文件会增长过快,占用其他备份文件及日志文件空间,从而引发系统错误。需要实时监控该文件的增长情况
Reflashback point guaranteen:
监控方案如下:
查看磁盘相关信息
select estimated_flashback_size,flashback_size
from v$flashback_database_log;
查看可恢复的窗口
selectoldest_flashback_scn,oldest_flashback_time
from v$flashback_database_log;
select * from v$flashback_database_stat;
需要处理的问题:
查看和设置闪回日志文件的存储地址:
Select * from v$recovery_file_desc;
Alter system set db_recovery_file_dest=’/home/app/oracle/flashback_recovery_area’更改默认存档路径
查看oracle后台与闪回相关的进程: ps–ef|grep rvwr
查看oracle日志: /home/app/oracle/product/11.2.0/dbhome_1/rdbms/log