Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2839118
  • 博文数量: 599
  • 博客积分: 16398
  • 博客等级: 上将
  • 技术积分: 6875
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-30 12:04
个人简介

WINDOWS下的程序员出身,偶尔也写一些linux平台下小程序, 后转行数据库行业,专注于ORACLE和DB2的运维和优化。 同时也是ios移动开发者。欢迎志同道合的朋友一起研究技术。 数据库技术交流群:58308065,23618606

文章分类

全部博文(599)

文章存档

2014年(12)

2013年(56)

2012年(199)

2011年(105)

2010年(128)

2009年(99)

分类: Oracle

2012-08-06 09:57:07

在10G中,如果要开启数据库级别的闪回,需要设置相关的参数,并且使数据库处于归档模式,然后再在MOUNT状态下开启闪回。
如果在OPEN状态下开启闪回,将会遇到如下的错误:
 

点击(此处)折叠或打开

  1. SQL> show parameter db_recovery

  2. NAME TYPE VALUE
  3. ------------------------------------ ---------------------- ------------------------------

  4. db_recovery_file_dest string /test/orcl/flashback
  5. db_recovery_file_dest_size big integer 2G
  6. SQL> select log_mode,flashback_on from v$database;

  7. LOG_MODE FLASHBACK_ON
  8. ------------------------ ------------------------------------

  9. ARCHIVELOG NO

  10. SQL> alter database flashback on;
  11. alter database flashback on
  12. *
  13. ERROR at line 1:
  14. ORA-38759: Database must be mounted by only one instance and not open.

可以看到如果要开启闪回,数据库需要启动到MOUNT状态才可以。
下面是10G中开启数据库闪回的大体步骤,如果没有开启归档的话,还得需要先开启归档。
 

点击(此处)折叠或打开

  1. SQL> shutdown immediate
  2. Database closed.
  3. Database dismounted.
  4. ORACLE instance shut down.
  5. SQL> startup mount
  6. ORACLE instance started.

  7. Total System Global Area 1610612736 bytes
  8. Fixed Size 2084400 bytes
  9. Variable Size 402653648 bytes
  10. Database Buffers 1191182336 bytes
  11. Redo Buffers 14692352 bytes
  12. Database mounted.
  13. SQL> alter database flashback on;

  14. Database altered.

  15. SQL> alter database open;

  16. Database altered.

  17. SQL> select log_mode,flashback_on from v$database;

  18. LOG_MODE FLASHBACK_ON
  19. ------------------------ ------------------------------------

  20. ARCHIVELOG YES

  21. SQL> select * from v$version;

  22. BANNER
  23. --------------------------------------------------------------------------------------------------------------------------------

  24. Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
  25. PL/SQL Release 10.2.0.4.0 - Production
  26. CORE 10.2.0.4.0 Production
  27. TNS for IBM/AIX RISC System/6000: Version 10.2.0.4.0 - Productio
  28. NLSRTL Version 10.2.0.4.0 - Production

  29. SQL>

这是10G中的情况,在11G中,如果设置了相关的参数及其开启了归档,那么可以再OPEN状态下打开闪回。
如下:

点击(此处)折叠或打开

  1. [oracle@db2server ~]$ sqlplus / as sysdba

  2. SQL*Plus: Release 11.2.0.1.0 Production on Sun Aug 5 17:05:38 2012

  3. Copyright (c) 1982, 2009, Oracle. All rights reserved.

  4. Connected to an idle instance.

  5. SQL> startup
  6. ORACLE instance started.

  7. Total System Global Area 506368000 bytes
  8. Fixed Size 1337520 bytes
  9. Variable Size 331351888 bytes
  10. Database Buffers 167772160 bytes
  11. Redo Buffers 5906432 bytes
  12. Database mounted.
  13. Database opened.
  14. SQL> select log_mode,flashback_on from v$database;

  15. LOG_MODE FLASHBACK_ON
  16. ------------ ------------------

  17. ARCHIVELOG NO

  18. SQL> show parameter db_recover

  19. NAME TYPE VALUE
  20. ------------------------------------ ----------- -----------------------------------

  21. db_recovery_file_dest string /u01/app/oracle/flash_recovery_area
  22. db_recovery_file_dest_size big integer 3852M

  23. SQL> alter database flashback on;

  24. Database altered.

  25. SQL> select log_mode,flashback_on from v$database;

  26. LOG_MODE FLASHBACK_ON
  27. ------------ ------------------

  28. ARCHIVELOG YES


  29. SQL> select * from v$version;

  30. BANNER
  31. --------------------------------------------------------------------------------

  32. Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
  33. PL/SQL Release 11.2.0.1.0 - Production
  34. CORE 11.2.0.1.0 Production
  35. TNS for Linux: Version 11.2.0.1.0 - Production
  36. NLSRTL Version 11.2.0.1.0 - Production

算是11G的一个小改进吧。
阅读(1892) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~