加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

OCM备考 三. Managing Database Availability 之flashback

发布时间:2020-12-15 18:30:36 所属栏目:百科 来源:网络整理
导读: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)参数设

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方式

rman> FLASHBACK DATABASE TO TIME = "TO_DATE('2004-05-27 16:00:00',

???'YYYY-MM-DD HH24:MI:SS')";

rman> flashback database to scn=123333;

3、基于日志序列的闪回

Rman> flashback database to sequence=128 thread=1;

3 监控

1、评估数据库能闪回的最早的时间点

SELECT estimated_flashback_size,?flashback_size,?oldest_flashback_scn,

,?oldest_flashback_time

FROM???V$FLASHBACK_DATABASE_LOG;

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'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读