Oracle的RMAN配置信息默认存放在target数据库的控制文件中,当然也可以配置一个recovery catalog服务器来存储这些信息,下面是控制文件和恢复的特性比较,一般来说维护10台以下的oracle数据库备份,可以不需要配置恢复目录.

  Control file:
– Simpler administration
– Default

Recovery catalog:
– Replicates control file data
– Has room for more data
– Can service many targets
– Can store RMAN scripts

RMAN repository data is always stored in the control file of the target database. But it can also be stored in a separate database, called a recovery catalog.

A recovery catalog preserves backup information in a separate database, which is useful in the event of a lost control file. This allows you to store a longer history of backups than what is possible with a control file–based repository. A single recovery catalog is able to store information for multiple target databases. The recovery catalog can also hold RMAN stored scripts, which are sequences of RMAN commands for common backup tasks. Centralized storage of scripts in the recovery catalog can be more convenient than working with command files.

Usage of a separate recovery catalog database is not recommended for small installations where administration of a separate recovery catalog database would be burdensome

 

下面来演示下恢复目录的配置,其中ora10g为catalog数据库,target数据库为orac 

   
   
   
   
  1. 1:创建用户和表空间并授权  
  2.  
  3. SQL> CREATE TABLESPACE rman DATAFILE '/u01/app/oradata/rman01.dbf'  
  4.    2 SIZE 500M AUTOEXTEND ON  NEXT 20M MAXSIZE 2G EXTENT MANAGEMENT LOCAL;  
  5.  
  6. Tablespace created.  
  7.  
  8.  
  9. SQL> CREATE USER RMAN IDENTIFIED BY rman  
  10.   2  TEMPORARY TABLESPACE temp  
  11.   3  DEFAULT TABLESPACE rman  
  12.   4  QUOTA UNLIMITED ON rman;  
  13.  
  14. User created.  
  15.  
  16.  
  17. SQL> GRANT RECOVERY_CATALOG_OWNER TO rman;  
  18.  
  19. Grant succeeded.  
  20.  
  21.  
  22. SQL> conn rman/rman  
  23. Connected.  
  24.  
  25. SQL> select count (*) from user_objects;  
  26.  
  27.   COUNT(*)  
  28. ----------  
  29.          0  
  30.  
  31. 2:创建恢复目录  
  32. [oracle@ora10g ~]$ rman catalog  rman/rman@ora10g  
  33.  
  34. Recovery Manager: Release 10.2.0.1.0 - Production on Wed Mar 16 09:58:16 2011  
  35.  
  36. Copyright (c) 1982, 2005, Oracle.  All rights reserved.  
  37.  
  38. connected to recovery catalog database  
  39.  
  40. RMAN> CREATE CATALOG;  
  41.  
  42. recovery catalog created  
  43.  
  44.    
  45.  
  46. SQL> select count (*) from user_objects;   //可以看出在rman表空间下的对象个数为195个  
  47.  
  48.   COUNT(*)  
  49. ----------  
  50.        195  
  51.  
  52. 3:连接,注册目标数据库,同步catalog和控制文件  
  53.  
  54. [oracle@orac ~]$ rman target sys/123456@orac catalog rman/rman@ora10g  
  55.  
  56. Recovery Manager: Release 10.2.0.1.0 - Production on Wed Mar 16 10:14:10 2011  
  57.  
  58. Copyright (c) 1982, 2005, Oracle.  All rights reserved.  
  59.  
  60. connected to target database: ORAC (DBID=1010679485)  
  61. connected to recovery catalog database  
  62.  
  63. RMAN> REGISTER DATABASE;  
  64.  
  65. database registered in recovery catalog  
  66. starting full resync of recovery catalog  
  67. full resync complete  
  68.  
  69. RMAN> RESYNC CATALOG;  
  70.  
  71. starting full resync of recovery catalog  
  72. full resync complete  
  73.  
  74. RMAN> LIST INCARNATION;  
  75. List of Database Incarnations  
  76. DB Key  Inc Key DB Name  DB ID            STATUS  Reset SCN  Reset Time  
  77. ------- ------- -------- ---------------- --- ---------- ----------  
  78. 1       8       ORAC     1010679485       PARENT  1          22-OCT-05  
  79. 1       2       ORAC     1010679485       CURRENT 525876     15-FEB-11