Oracle 10g学习之闪回数据库
estimated_flashback_size -------估计数据的大小 Fromv$flashback_database_log; V$FLASHBACK_DATABASE_STAT 显示闪回
目标
闪回数据库
去定为每种恢复情形使用哪种闪回技术
配置和使用闪回数据库
监视闪回数据库
使用EM管理闪回数据库
管理(维护)Flash Recovery Area
闪回技术概述
9i中首次引入闪回技术,第一个出现的是闪回查询(flackback query)。
10g里有了显着的扩展:
闪回数据库(Flashback Database)
闪回删除(Flashbackup Drop)
闪回版本查询(Flashback Versions Query)
闪回事务查询(Flashback Transaction Query)
闪回表(FlashbackTable)
所有的闪回技术,除了闪回数据库,都是基于撤销数据(undodata)。
闪回数据库技术可以替代不完全恢复,优势在于闪回数据库更快效率更高,它是基于闪回日志的。
闪回删除、闪回版本查询、闪回事务和闪回表最佳用法是恢复单独的对象或者对象中的行。
闪回删除------------虚拟回收站,允许被删除的对象重建
闪回版本查询、闪回事务查询--------------识别和确定需要恢复到先前状态的数据行
闪回表---------------从错误中恢复单独的表或表组
闪回数据库最适用于从某些种类的失误中恢复,如截短大表、不完整的批任务或删除了用户。
闪回数据库概述
闪回数据库能使整个数据库闪回到特定的时间点。
闪回数据库恢复比传统恢复操作更快的原因是:恢复不再受数据库大小的影响。
闪回数据库恢复时间正比于恢复过程汇总需要备份的变化的数量,而不是数据文件和归档日志大小。
闪回数据库恢复的结构:恢复写入器(PVWR)后台进程和闪回数据库日志组成。
PVWR在闪回控制区写入闪回数据库日志。
闪回恢复区。
闪回数据库的局限:
1.不能解决介质故障,介质故障仍然需要重建数据文件和恢复归档日志。
2.缩小数据文件到较小的尺寸,也被称为截短数据文件,,闪回数据库不能撤销。
3.如果控制文件被重建,不能使用闪回数据库
4.不能完成删除一个表空间并用resetlogs恢复。
5.不能将数据库闪回到一个SCN值(如果该SCN早于闪回日志中最早的可用的SCN)
使用Recovery Manager管理闪回恢复区
闪回恢复区专门用于将所有恢复文件集中存储于磁盘上的某个区域。
闪回恢复区对恢复过程提供两个主要好处:
所有恢复文件集中存储在一个区域
它提供更快的备份和重建方法,因为信息被写入磁盘而不是磁带
闪回恢复区通过初始化数据库参数而建立,同时也在参数中定义恢复区大小和位置。
BDA_OUTSTANDING_ALERTS视图可查看闪回恢复区状态信息。
恢复区使用率达到90%和95%时,10g数据库将向警告日志发送警告信息。90%时10g将自动把已废弃的 文件从闪回恢复区删除。
配置闪回恢复区
只需在数据库增加一对数据库参数:db_recovery_file_dest_size db_recovery_file_dest
例子:
1.SQL>altersystemsetdb_recovery_file_dest_size=10mscope=both
2.SQL>altersystemsetdb_recovery_file_dest='d:Oracleflash_recovery_areatest';
修改用alter system
停用闪回恢复区:alter system set db_recovery_file_dest=' ';
使用闪回恢复区
闪回恢复区是一个集中的恢复区域。
这些文件和数据文件及控制文件有关系。这就减少了手工清除不需要的归档日志。
V$recovery_file_dest检查消耗的空间和其他关于闪回恢复区的统计信息。
闪回恢复区可以包括数据文件、控制文件、联机重做日志、各种各样的RMAN文件和闪回日志。用户可以在建立重做日志、控制文件、和归档日志文件时将他们存储在闪回恢复区。
下一篇: reduce和reduceRight详解