使用恢复目录(catalog)数据库

创建恢复目录

1、创建表空间

  1. SQL> create tablespace rman datafile '/u01/app/oracle/oradata/orcl/rman1.dbf' size 50m;  
  2.   
  3. 表空间已创建。  
SQL> create tablespace rman datafile '/u01/app/oracle/oradata/orcl/rman1.dbf' size 50m;

表空间已创建。


2、创建用户

  1. SQL> create user rman identified by rman default tablespace rman temporary tablespace temp quota unlimited on rman;  
  2.   
  3. 用户已创建。  
SQL> create user rman identified by rman default tablespace rman temporary tablespace temp quota unlimited on rman;

用户已创建。

3、授权

  1. SQL> grant connect,resource,recovery_catalog_owner to rman;  
  2.   
  3. 授权成功。  
SQL> grant connect,resource,recovery_catalog_owner to rman;

授权成功。

4、连接到恢复目录

  1. [oracle@linux ~]$ rman catalog rman/rman@orcl  
  2.   
  3. 恢复管理器: Release 10.2.0.4.0 - Production on 星期四 10月 13 12:55:12 2011  
  4.   
  5. Copyright (c) 1982, 2007, Oracle.  All rights reserved.  
  6.   
  7. 连接到恢复目录数据库  
[oracle@linux ~]$ rman catalog rman/rman@orcl

恢复管理器: Release 10.2.0.4.0 - Production on 星期四 10月 13 12:55:12 2011

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

连接到恢复目录数据库


5、创建catalog数据库

  1. RMAN> create catalog;  
  2.   
  3. 恢复目录已创建  
RMAN> create catalog;

恢复目录已创建

6、连接

  1. [oracle@linux ~]$ rman target sys/oracle@orcl catalog rman/rman@orcl  
  2.   
  3. 恢复管理器: Release 10.2.0.4.0 - Production on 星期四 10月 13 12:56:55 2011  
  4.   
  5. Copyright (c) 1982, 2007, Oracle.  All rights reserved.  
  6.   
  7. 连接到目标数据库: ORCL (DBID=1292118315)  
  8. 连接到恢复目录数据库  
[oracle@linux ~]$ rman target sys/oracle@orcl catalog rman/rman@orcl

恢复管理器: Release 10.2.0.4.0 - Production on 星期四 10月 13 12:56:55 2011

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

连接到目标数据库: ORCL (DBID=1292118315)
连接到恢复目录数据库

7、注册

  1. RMAN> register database;  
  2.   
  3. 注册在恢复目录中的数据库  
  4. 正在启动全部恢复目录的 resync  
  5. 完成全部 resync  
RMAN> register database;

注册在恢复目录中的数据库
正在启动全部恢复目录的 resync
完成全部 resync

说明:catalog数据库也需要备份,通常使用exp/imp既可。注意:强烈建议catalog数据库和要备份的数据库不要使用同一个数据库。(这里为了方便catalog数据库和备份数据库使用了同一个。)因为如果备份数据库宕了,你连rman都进不去了,更不要说利用catalog目录里面的信息来恢复数据库。


使用catalog的另外一个好处是可以在数据库中存储备份脚本

创建脚本

  1. RMAN> create script fullbak{  
  2. 2> backup database; }  
  3.   
  4. 已创建脚本 fullbak  
RMAN> create script fullbak{
2> backup database; }

已创建脚本 fullbak

运行脚本

  1. RMAN> run {execute script fullbak;}  
  2.   
  3. 正在执行脚本: fullbak  
  4.   
  5. 启动 backup 于 13-10月-11  
  6. 分配的通道: ORA_DISK_1  
  7. 通道 ORA_DISK_1: sid=150 devtype=DISK  
  8. 通道 ORA_DISK_1: 启动全部数据文件备份集  
  9. 通道 ORA_DISK_1: 正在指定备份集中的数据文件  
  10. 输入数据文件 fno=00001 name=/u01/app/oracle/oradata/orcl/system01.dbf  
  11. 输入数据文件 fno=00003 name=/u01/app/oracle/oradata/orcl/sysaux01.dbf  
  12. 输入数据文件 fno=00006 name=/u01/app/oracle/oradata/orcl/rman1.dbf  
  13. 输入数据文件 fno=00002 name=/u01/app/oracle/oradata/orcl/undotbs01.dbf  
  14. 输入数据文件 fno=00005 name=/u01/app/oracle/oradata/orcl/tb1.dbf  
  15. 输入数据文件 fno=00004 name=/u01/app/oracle/oradata/orcl/users01.dbf  
  16. 通道 ORA_DISK_1: 正在启动段 1 于 13-10月-11  
  17. 通道 ORA_DISK_1: 已完成段 1 于 13-10月-11  
  18. 段句柄=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_13/o1_mf_nnndf_TAG20111013T131009_79dwokbc_.bkp 标记=TAG20111013T131009 注释=NONE  
  19. 通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:35  
  20. 完成 backup 于 13-10月-11  
  21.   
  22. 启动 Control File and SPFILE Autobackup 于 13-10月-11  
  23. 段 handle=/u01/app/oracle/flash_recovery_area/ORCL/autobackup/2011_10_13/o1_mf_s_764428246_79dwpq2f_.bkp comment=NONE  
  24. 完成 Control File and SPFILE Autobackup 于 13-10月-11  
  25.   
  26. RMAN> delete script fullbak;  
RMAN> run {execute script fullbak;}

正在执行脚本: fullbak

启动 backup 于 13-10月-11
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=150 devtype=DISK
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=/u01/app/oracle/oradata/orcl/system01.dbf
输入数据文件 fno=00003 name=/u01/app/oracle/oradata/orcl/sysaux01.dbf
输入数据文件 fno=00006 name=/u01/app/oracle/oradata/orcl/rman1.dbf
输入数据文件 fno=00002 name=/u01/app/oracle/oradata/orcl/undotbs01.dbf
输入数据文件 fno=00005 name=/u01/app/oracle/oradata/orcl/tb1.dbf
输入数据文件 fno=00004 name=/u01/app/oracle/oradata/orcl/users01.dbf
通道 ORA_DISK_1: 正在启动段 1 于 13-10月-11
通道 ORA_DISK_1: 已完成段 1 于 13-10月-11
段句柄=/u01/app/oracle/flash_recovery_area/ORCL/backupset/2011_10_13/o1_mf_nnndf_TAG20111013T131009_79dwokbc_.bkp 标记=TAG20111013T131009 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:35
完成 backup 于 13-10月-11

启动 Control File and SPFILE Autobackup 于 13-10月-11
段 handle=/u01/app/oracle/flash_recovery_area/ORCL/autobackup/2011_10_13/o1_mf_s_764428246_79dwpq2f_.bkp comment=NONE
完成 Control File and SPFILE Autobackup 于 13-10月-11

RMAN> delete script fullbak;

删除脚本

  1. RMAN> delete script fullbak;  
  2.   
  3. 已删除脚本: fullbak  
RMAN> delete script fullbak;

已删除脚本: fullbak

显示脚本内容

  1. RMAN> print script fullbak;  
  2.   
  3. 正在打印存储的脚本: fullbak  
  4.  {backup database; }  
RMAN> print script fullbak;

正在打印存储的脚本: fullbak
 {backup database; }

列出所有脚本

  1. RMAN> list script names;  
  2.   
  3. 恢复目录中存储脚本的列表  
  4.   
  5.   
  6.     目标数据库 ORCL 的脚本  
  7.   
  8.        脚本名  
  9.        说明  
  10.        -----------------------------------------------------------------------  
  11.        fullbak  
RMAN> list script names;

恢复目录中存储脚本的列表


    目标数据库 ORCL 的脚本

       脚本名
       说明
       -----------------------------------------------------------------------
       fullbak


管理恢复目录
卸载:RMAN> unregister database;

同步:RMAN> resync catalog;

升级(注意升级要运行两次):RMAN> upgrade catalog;

删除:RMAN> drop catalog;


 

查询恢复目录
查询恢复目录中注册的数据库

[sql] view plaincopyprint?

  1. SQL> conn rman/rman  
  2. 已连接。  
  3. SQL> select * from rc_database;  
  4.   
  5.     DB_KEY  DBINC_KEY       DBID NAME     RESETLOGS_CHANGE# RESETLOGS_TIME  
  6. ---------- ---------- ---------- -------- ----------------- --------------  
  7.          1          2 1292118315 ORCL                474701 12-10月-11  
SQL> conn rman/rman
已连接。
SQL> select * from rc_database;

    DB_KEY  DBINC_KEY       DBID NAME     RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ---------- ---------- -------- ----------------- --------------
         1          2 1292118315 ORCL                474701 12-10月-11


 

查询恢复目录中所记载的目标数据库的表空间信息

[sql] view plaincopyprint?

  1. SQL> select * from rc_tablespace;  
  2.   
  3.     DB_KEY  DBINC_KEY DB_NAME         TS# NAME                           CREATION_CHANGE# CREATION_TIME  DROP_CHANGE# DROP_TIME      INC BIG TEM ENC  
  4. ---------- ---------- -------- ---------- ------------------------------ ---------------- -------------- ------------ -------------- --- --- --- ---  
  5.          1          2 ORCL              0 SYSTEM                                        7 17-2月 -08                                 YES NO  NO  
  6.          1          2 ORCL              1 UNDOTBS1                                 462458 17-2月 -08                                 YES NO  NO  
  7.          1          2 ORCL              2 SYSAUX                                     6677 17-2月 -08                                 YES NO  NO  
  8.          1          2 ORCL              3 TEMP                                     464713 12-10月-11                                 NO  NO  YES  
  9.          1          2 ORCL              4 USERS                                     10753 17-2月 -08                                 YES NO  NO  
  10.          1          2 ORCL              6 TB1                                      474104 12-10月-11                                 YES NO  NO  
  11.          1          2 ORCL              7 RMAN                                     478417 13-10月-11                                 YES NO  NO  
  12.   
  13. 已选择7行。  
SQL> select * from rc_tablespace;

    DB_KEY  DBINC_KEY DB_NAME         TS# NAME                           CREATION_CHANGE# CREATION_TIME  DROP_CHANGE# DROP_TIME      INC BIG TEM ENC
---------- ---------- -------- ---------- ------------------------------ ---------------- -------------- ------------ -------------- --- --- --- ---
         1          2 ORCL              0 SYSTEM                                        7 17-2月 -08                                 YES NO  NO
         1          2 ORCL              1 UNDOTBS1                                 462458 17-2月 -08                                 YES NO  NO
         1          2 ORCL              2 SYSAUX                                     6677 17-2月 -08                                 YES NO  NO
         1          2 ORCL              3 TEMP                                     464713 12-10月-11                                 NO  NO  YES
         1          2 ORCL              4 USERS                                     10753 17-2月 -08                                 YES NO  NO
         1          2 ORCL              6 TB1                                      474104 12-10月-11                                 YES NO  NO
         1          2 ORCL              7 RMAN                                     478417 13-10月-11                                 YES NO  NO

已选择7行。


查询恢复目录中所记载的目标数据库的数据文件信息

[sql] view plaincopyprint?

  1. SQL> select DB_KEY,DBINC_KEY,DB_NAME,TS#,TABLESPACE_NAME,FILE#,NAME from rc_datafile;  
  2.   
  3.     DB_KEY  DBINC_KEY DB_NAME         TS# TABLESPACE_NAME                     FILE# NAME  
  4. ---------- ---------- -------- ---------- ------------------------------ ---------- ------------------------------------------------------------  
  5.          1          2 ORCL              0 SYSTEM                                  1 /u01/app/oracle/oradata/orcl/system01.dbf  
  6.          1          2 ORCL              1 UNDOTBS1                                2 /u01/app/oracle/oradata/orcl/undotbs01.dbf  
  7.          1          2 ORCL              2 SYSAUX                                  3 /u01/app/oracle/oradata/orcl/sysaux01.dbf  
  8.          1          2 ORCL              4 USERS                                   4 /u01/app/oracle/oradata/orcl/users01.dbf  
  9.          1          2 ORCL              6 TB1                                     5 /u01/app/oracle/oradata/orcl/tb1.dbf  
  10.          1          2 ORCL              7 RMAN                                    6 /u01/app/oracle/oradata/orcl/rman1.dbf  
  11.   
  12. 已选择6行。  
SQL> select DB_KEY,DBINC_KEY,DB_NAME,TS#,TABLESPACE_NAME,FILE#,NAME from rc_datafile;

    DB_KEY  DBINC_KEY DB_NAME         TS# TABLESPACE_NAME                     FILE# NAME
---------- ---------- -------- ---------- ------------------------------ ---------- ------------------------------------------------------------
         1          2 ORCL              0 SYSTEM                                  1 /u01/app/oracle/oradata/orcl/system01.dbf
         1          2 ORCL              1 UNDOTBS1                                2 /u01/app/oracle/oradata/orcl/undotbs01.dbf
         1          2 ORCL              2 SYSAUX                                  3 /u01/app/oracle/oradata/orcl/sysaux01.dbf
         1          2 ORCL              4 USERS                                   4 /u01/app/oracle/oradata/orcl/users01.dbf
         1          2 ORCL              6 TB1                                     5 /u01/app/oracle/oradata/orcl/tb1.dbf
         1          2 ORCL              7 RMAN                                    6 /u01/app/oracle/oradata/orcl/rman1.dbf

已选择6行。


查询恢复目录中所记载的存储脚本信息

[sql] view plaincopyprint?

  1. SQL> select * from rc_stored_script;  
  2.   
  3.     DB_KEY DB_NAME  SCRIPT_NAME     SCRIPT_COMMENT  
  4. ---------- -------- --------------- --------------------  
  5.          1 ORCL     fullbak  
SQL> select * from rc_stored_script;

    DB_KEY DB_NAME  SCRIPT_NAME     SCRIPT_COMMENT
---------- -------- --------------- --------------------
         1 ORCL     fullbak


 

查询恢复目录中所记载的存储脚本内容

[sql] view plaincopyprint?

  1. SQL> select * from rc_stored_script_line;  
  2.   
  3.     DB_KEY SCRIPT_NAME           LINE TEXT  
  4. ---------- --------------- ---------- ------------------------------  
  5.          1 fullbak                  1  {backup database; }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值