rac flashback database 配置

Oracle Flashback
10g中Flashback包括:flashback database(数据库级),flashback table(表级),flashback drop(表级),flashback version query(记录级),flashback transaction query(记录级)。
记录级与表级的flashback操作可以由普通用户使用,不需要dba介入,而数据库级flashback需要由dba完成。

Flashback Database整个架构包括一个Recover Writer(RVWR)后台进程,flashback database log日志和flash recovery area。能够把整个数据库回退到过去某个时间点的状态,依赖于flashback log日志,这些日志包括数据块的前镜像,因此比rman更快速。但flashback database有某些限制。

Flashback Drop 用于恢复用户误删除的对象。依赖于Tablespace Recycle Bin(表空间回收站)。

Flashback Table 真正进数据进行闪回操作,以下三种只是用于分析,真正的操作使用Flashback Table。依赖于UNDO。

9iFlashback Query 可以查询过去某个时间点对象的状态。依赖于UNDO。

Flashback Version Query 可以查看过去某个时间段内,记录是如何发生变化的,即记录的演变历史。根据这些历史,可以快速判断是在什么时间点发生了错误,进而恢复到之前的状态。依赖于UNDO。

Flashback Transaction Query 可以查看某个事务执行的所有变化,需要访问flashback_transaction_query视图。依赖于UNDO。

启用Flashback Database
Flashback Database主要通过3个初始化参数来设置和管理
db_recovery_file_dest:指定闪回恢复区的位置, 如果使用asm,只能指定磁盘组,而不能指定目录。
db_recovery_file_dest_size:指定闪回恢复区的可用空间大小
db_flashback_retention_target:指定数据库可以回退的时间,单位为分钟,默认1440分钟,也就是一天。当然,实际上可回退的时间还决定于闪回恢复区的大小,因为里面保存了回退所需要的 flash log。所以这个参数要和db_recovery_file_dest_size配合修改。

配置示例:

--某一节点执行
SQL> alter system set db_recovery_file_dest_size=100M scope=spfile sid='*';

System altered.

SQL>  alter system set db_recovery_file_dest='+RECOVERY' scope=spfile sid='*';

System altered.

SQL> col name format a32 heading 'parameter'
SQL> col value format a32 heading 'setting'
SQL> select name,value from v$parameter where name like '%flash%' or name like '%recovery%' order by name;

parameter                        setting
-------------------------------- --------------------------------
db_flashback_retention_target    1440
db_recovery_file_dest
db_recovery_file_dest_size       104857600
recovery_parallelism             0

--关闭所有节点
SQL> shutdown immediate

--在某一节点执行,启动到mount状态,开启闪回
SQL> startup mount 
ORACLE instance started.

Total System Global Area  264241152 bytes
Fixed Size                  2020056 bytes
Variable Size             113249576 bytes
Database Buffers          146800640 bytes
Redo Buffers                2170880 bytes
Database mounted.
SQL> alter database flashback on;

Database altered.

SQL> col name format a12
SQL> col current_scn format 9999999
SQL> col flashback_on format a20
SQL> select name,current_scn,flashback_on
  2  from v$database;

parameter    CURRENT_SCN FLASHBACK_ON
------------ ----------- --------------------
ORARAC                 0 YES

SQL> alter database open;

Database altered.

SQL> col name format a32 heading 'parameter'
SQL> col value format a32 heading 'setting'
SQL> select name,value from v$parameter where name like '%flash%' or name like '%recovery%' order by name;

parameter                        setting
-------------------------------- --------------------------------
db_flashback_retention_target    1440
db_recovery_file_dest            +RECOVERY
db_recovery_file_dest_size       104857600
recovery_parallelism             0

--启动其它节点,并查看是否设置成功
SQL> select name,current_scn,flashback_on from v$database;

NAME      CURRENT_SCN FLASHBACK_ON
--------- ----------- ------------------
ORARAC         956458 YES

--查看闪回日志
ASMCMD> pwd
+Recovery/orarac/flashback
ASMCMD> ls -ltr
Type       Redund  Striped  Time              Sys  Name
FLASHBACK  MIRROR  FINE     11? 06 10:00:00   Y    log_1.256.766492023
FLASHBACK  MIRROR  FINE     11? 06 10:00:00   Y    log_2.257.766492493




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值