ITPub博客

首页 > 数据库 > Oracle > ORACLE闪回查询配置和测试

ORACLE闪回查询配置和测试

Oracle 作者:hongfeng1021 时间:2012-02-10 11:29:09 0 删除 编辑

测试环境Windows XP,单实例ORACLE数据库。

 

1. 配置ORACLE的FLash Recovery

   

   1.1 EM配置归档和闪回

       a. 使用sys用户和sys身份登陆EM。

       b. 打开“维护”-》“备份/恢复”标签内的 “配置恢复设置”。

          在介质恢复区域内,开启归档模式。因为Flash Recovery必须运行于归档模式,

          如果归档模式未配置,启用闪回恢复功能,会提示你数据库必须处于归档模式。

         

          快速恢复区内填写快速恢复区位置和快速恢复区大小。并指定闪回保留时间。确保

          “仅将更改应用于SPFILE”未被选中。

   1.2 命令行设置归档模式

       a. md E:oracleproduct10.1.0flash_recovery_area

          md E:oracleproduct10.1.0archive2

       b. connect / as sysdba

       c. alter system set log_archive_dest_1 = 'location=E:oracleproduct10.1.0flash_recovery_area' scope=spfile;

          alter system set log_archive_dest_2 = 'location=E:oracleproduct10.1.0archive2' scope=spfile;

          alter system set log_archive_format='arch_%d_%t_%r_%s.log' scope=spfile;

       d. shutdown immediate;

       e. startup mount;

       f. alter database archivelog;

       g. alter database open;

 

2. 检查归档模式和闪回功能

   2.1 归档模式检查

       select log_mode from v$database;

       select archived from v$instance;

       alter system switch logfile;

       select name from v$archived_log;

   2.2 闪回功能

       create tablespace trswcm
           datafile 'E:ORACLEPRODUCT10.1.0ORADATAORCLTRSWCM01.DBF'
           size 200m  
           autoextend on 
           next 50m maxsize 20480m;
       create table wcm_objects tablespace trswcm as select * from dba_objects ;

 

       --等待五分钟以上
      delete from wcm_objects ;
      commit;
      select count(*) from wcm_objects;
      select count(*) from wcm_objects as of timestamp(sysdate - 5/24/60);

      

3. 测试快速回复区大小和闪回保留时间的关系

      闪回日志保存于快速恢复区内。

      如果快速恢复区为1G,保留时间为24小时,那么数据库频繁操作,在24小时之内闪回日志大于1G空间时,

      数据库如何处理?

      闪回保留其最长为24小时,如果数据库频繁,可能闪回操作保留的时间会小于24小时。

 

      实际经过测试,如果快速恢复区被占满之后,数据库将当掉。

 

       

 

 

最后附,命令行设置归档模式和闪回功能

C:Documents and SettingsAdministrator>sqlplus / as sysdba

SQL*Plus: Release 10.1.0.2.0 - Production on 星期四 2月 9 15:48:15 2012

Copyright (c) 1982, 2004, Oracle.  All rights reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> select name, log_mode, flashback_on from v$database;

NAME      LOG_MODE     FLA
--------- ------------ ---
ORCL      NOARCHIVELOG NO

SQL> col flashback_on format a12
SQL> select name, log_mode, flashback_on from v$database;

NAME      LOG_MODE     FLASHBACK_ON
--------- ------------ ------------
ORCL      NOARCHIVELOG NO

SQL> show parameter recovery

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      E:oracleproduct10.1.0flash
                                                 _recovery_area
db_recovery_file_dest_size           big integer 1G
recovery_parallelism                 integer     0
SQL> alter system set db_recovery_file_dest_size=1g scope=both;

System altered.

SQL> alter system set db_recovery_file_dest=E:oracleproduct10.1.0flash_db_recovery_area scope=both;
alter system set db_recovery_file_dest=E:oracleproduct10.1.0flash_db_recovery_area scope=both
                                        *
ERROR at line 1:
ORA-00922: missing or invalid option


SQL> alter system set db_recovery_file_dest='E:oracleproduct10.1.0flash_recovery_area' scope=both;

System altered.

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started.

Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             144964076 bytes
Database Buffers           25165824 bytes
Redo Buffers                1048576 bytes
Database mounted.
SQL> alter database flashback on;
alter database flashback on
*
ERROR at line 1:
ORA-38706: Cannot turn on FLASHBACK DATABASE logging.
ORA-38707: Media recovery is not enabled.


SQL> alter system set log_archive_dest_1='location=E:oracleproduct10.1.0flash_recovery_area' scope=both;

System altered.

SQL> alter database archivelog;

Database altered.

SQL> alter database flashback;
alter database flashback
                       *
ERROR at line 1:
ORA-38722: ON or OFF expected.


SQL> alter database flashback on;

Database altered.

SQL> alter database open;

Database altered.

SQL>  select name, log_mode, flashback_on from v$database;

NAME      LOG_MODE     FLASHBACK_ON
--------- ------------ ------------
ORCL      ARCHIVELOG   YES

SQL>

<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7199290/viewspace-1115422/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论