10g OCM大纲关于flashback考点
﹡ Set Flashback Database parameters
﹡ Monitor Flashback Database logs and statistics
﹡ Perform a Flashback Database operation
﹡ Configure a flash recovery area
1 打开flashback database功能
1)参数设置
db_recovery_file_dest
db_recovery_file_dest_size :闪回区大小
db_flashback_retention_target :能闪回的时间范围
2) 打开数据库闪回功能
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT EXCLUSIVE;
SQL> ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET=2880 SCOPE=BOTH;
SQL> ALTER DATABASE FLASHBACK ON;
SQL> ALTER DATABASE OPEN;
2 flashback database
2.1 sql方式
1、基于时间的闪回
将数据库闪回到过去一个时间点:
sql> flashback database to timestamp(to_timestamp(‘2010-07-27 10:00:00’,’yyyy-mm-ddHh24:mi:ss’)) ;
Sql> alter database open resetlogs;
2、基于scn的闪回
将数据库闪回到过去的scn:
sql> FLASHBACK DATABASE TO SCN 53943;
sql> alter database open resetlogs;
2.2 rman方式
1、基于时间的闪回
rman> FLASHBACK DATABASE TO TIME = "TO_DATE('2004-05-27 16:00:00',
2、基于scn的闪回
rman> flashback database to scn=123333;
3、基于日志序列的闪回
Rman> flashback database to sequence=128 thread=1;
3 监控
1、评估数据库能闪回的最早的时间点
SELECT estimated_flashback_size,
, oldest_flashback_time
FROM
2、闪回区得空间利用率
Select * from v$flash_recovery_area_usage;
4 flashback table
将表闪回到过去时间点:
sql> flashback table t2 to timestamp to_timestamp('2011-06-18 23:37:48','yyyy-mm-dd hh24:mi:ss');
5 flashback query
1、闪回查询过去一个时间点的数据
select * from t2 as of timestamp to_timestamp('2011-06-18 23:37:48','yyyy-mm-dd hh24:mi:ss') where id=1;
2、闪回查询过去一个时间范围的数据
SELECT versions_xid, salary FROM employees VERSIONS BETWEEN TIMESTAMP t1 and t2
WHERE employee_id = 200;
3、FLASHBACK_TRANSACTION_QUERY
查询过去时间段内操作的dml,并给出撤销该操作的语句(undo_sql)
Sql> select xid,start_scn,commit_scn,undo_change#,operation,row_id,undo_sql from
flashback_transaction_query where table_name='T1' and table_owner='U1'