`

RMAN catalog

 
阅读更多

一、RMAN   简介  

 

  RMAN   可以用来备份和恢复数据库文件、归档日志和控制文件,也可以用来执行完全或不完全的数据库恢复。RMAN有三种不同的用户接口:COMMAND   LINE方式、GUI   方式(集成在OEM   中的备份管理器)、API   方式(用于集成到第三方的备份软件中)。具有如下特点:  

 

  1)功能类似物理备份,但比物理备份强大N倍,从下面的特点可以看到;  

 

  2)可以压缩空块;  

 

  3)可以在块水平上实现增量;  

 

  4)可以把备份的输出打包成备份集,也可以按固定大小分割备份集;  

 

  5)备份与恢复的过程可以自动管理;  

 

  6)可以使用脚本(存在Recovery   catalog   中)  

 

  7)可以做坏块监测  

 

   

 

  二、相关术语解释  

 

  1)Backup   sets   备份集  

 

  备份集顾名思义就是一次备份的集合,它包含本次备份的所有备份片,以oracle专有的格式保存。一个备份集根据备份的类型不同,可能构成一个完全备份或增量备份。  

 

  2)Backup   pieces   备份片  

 

  一个备份集由若干个备份片组成。每个备份片是一个单独的输出文件。一个备份片的大小是有限制的;如果没有大小的限制,   备份集就只由一个备份片构成。备份片的大小不能大于你的文件系统所支持的文件长度的最大值。  

 

  3)Image   copies   映像备份  

 

  映像备份不压缩、不打包、直接COPY   独立文件(数据文件、归档日志、控制文件),类似操作系统级的文件备份。而且只能COPY   到磁盘,不能到磁带。可以作为增量备份的0级,一般用来备份控制文件。  

 

  4)Full   backup   全备份  

 

  全备份是指对数据文件中使用过的数据块进行备份,没有使用过的数据块是不做备份的,也就是说,RMAN   进行备份是进行压缩的。  

 

  5)Incremental   backup   增量备份  

 

  增量备份是指备份数据文件中自从上一次同一级别的或更低级别的备份以来被修改过的数据块。与完全备份相同,增量备份也进行压缩。增量备份虽然概念很好,备份也很简单,但恢复起来却是另外一回事,不仅麻烦而且容易出错,所以实际中越来越少使用,到了Oracle   9i已经建议不再使用,以后版本会逐渐取消对增量备份的支持。  

 

  6)Recovery   catalog   恢复目录  

 

  恢复目录用于记录RMAN   使用过程中的控制信息,恢复目录应该经常被同步(这在后面会讲到)。尽管我们可以使用nocatalog   方式来使用RMAN,此时控制信息记录在目标数据库的控制文件中,但这样毕竟不安全,因为一旦目标数据库的控制文件损坏就意味着所有的RMAN   备份失效。同样的道理恢复目录应该建立在另外一个数据库中,在下面的例子中我们称作“目录数据库”。  

 

   

 

  三、创建恢复目录  

 

  1、在目录数据库中创建恢复目录所用表空间  

 

  SQL>   create   tablespace   rmants   datafile   'c:\oracle\oradata\cc\rmants.ora'   size   20M   ;  

 

  表空间已创建。  

 

  2、在目录数据库中创建RMAN   用户并授权  

 

  SQL>   create   user   rman   identified   by   rman   default   tablespace   rmants   temporary   tablespace   temp   quota  

 

  unlimited   on   rmants;  

 

  用户已创建  

 

  SQL>   grant   recovery_catalog_owner   to   rman   ;  

 

  授权成功。  

 

  3、在目录数据库中创建恢复目录  

 

  C:\>rman   catalog   rman/rman  

 

  恢复管理器:版本8.1.7.0.0   -   Production  

 

  RMAN-06008:连接到恢复目录数据库  

 

  RMAN-06428:未安装恢复目录  

 

  RMAN>create   catalog   tablespace   rmants;  

 

  RMAN-06431:恢复目录已创建  

 

 

4、注册目标数据库到恢复目录  

 

  注意哦,这里我的目标数据库使用的服务名称是rman,意思为要使用RMAN   进行备份的数据库,而目录  

 

  数据库使用的服务名称是CC。  

 

  C:\>rman   target   sys/sys@rman  

 

  恢复管理器:版本8.1.7.0.0   -   Production  

 

  RMAN-06005:连接到目标数据库:RMAN   (DBID=1303772234)  

 

  RMAN>connect   catalog   rman/rman@cc  

 

  RMAN-06008:连接到恢复目录数据库  

 

  RMAN>register   database;  

 

  RMAN-03022:正在编译命令:register  

 

  RMAN-03023:正在执行命令:register  

 

  RMAN-08006:注册在恢复目录中的数据库  

 

  RMAN-03023:正在执行命令:full   resync  

 

  RMAN-08002:正在启动全部恢复目录的resync  

 

  RMAN-08004:完成全部resync  

 

  好了,到此为止前面的准备工作都做好了,下面就可以使用RMAN   来进行备份和恢复了。  

 

   

 

  四、使用RMAN  

 

  下面通过具体的例子来说明RMAN   的使用,这里会涉及到除了恢复以外的所有RMAN   操作,关于使用RMAN   进行恢复的内容请参考我以前写的另外一篇文章:RMAN   恢复实践。  

 

  1、备份整个数据库  

 

  RMAN>run   {  

 

  2>   allocate   channel   c1   type   disk;  

 

  3>   backup   database   format   'e:\dbbackup\2db.dmp';  

 

  4>   }  

 

  2、复制数据文件  

 

  RMAN>run   {  

 

  2>   allocate   channel   c1   type   disk;  

 

  3>   copy   datafile   'c:\oracle\oradata\rman\users01.dbf'   to   'e:\dbbackup\u.dbf'   tag  

 

  =u1215;  

 

  4>   }  

 

  3、查看备份及复制的信息  

 

  RMAN>list   backup;  

 

  RMAN-03022:正在编译命令:list  

 

  备份集列表  

 

  关键字Recid   标记LV   集合标记集合计数完成时间  

 

  -------   ----------   ----------   --   ----------   ----------   ----------------------  

 

  216   1   417347013   0   417346992   1   26-12   月-00  

 

  备份段列表  

 

  关键字Pc#   Cp#   状态完成时间段名  

 

  -------   ---   ---   -----------   ----------------------   ------------------------  

 

  217   1   1   AVAILABLE   26-12   月-00   E:\DBBACKUP\2DB.DMP  

 

  数据文件包括列表  

 

  文件名称LV   类型检查点SCN   检查点时间  

 

  ----   -------------------------------------   --   ----   ----------   -------------  

 

  1   C:\ORACLE\ORADATA\RMAN\SYSTEM01.DBF   0   Full   33224   26-12   月-00  

 

  2   C:\ORACLE\ORADATA\RMAN\RBS01.DBF   0   Full   33224   26-12   月-00  

 

  3   C:\ORACLE\ORADATA\RMAN\USERS01.DBF   0   Full   33224   26-12   月-00  

 

  4   C:\ORACLE\ORADATA\RMAN\TEMP01.DBF   0   Full   33224   26-12   月-00  

 

  5   C:\ORACLE\ORADATA\RMAN\TOOLS01.DBF   0   Full   33224   26-12   月-00  

 

  6   C:\ORACLE\ORADATA\RMAN\INDX01.DBF   0   Full   33224   26-12   月-00  

 

  RMAN>list   copy   of   datafile   'c:\oracle\oradata\rman\users01.dbf';  

 

  RMAN-03022:正在编译命令:list  

 

  数据文件备份列表  

 

  关键字文件状态完成时间检查点SCN   检查点时间名称  

 

  -------   ----   -   ---------------   ----------   ---------------   ------  

 

  226   3   A   26-12   月-00   33226   26-12   月-00   E:\DBBACKUP\U.DBF  

 

  4、在备份是设置相关参数  

 

  format   --文件输出格式,  

 

  %d--database   name,  

 

  %s--backup   sets   sequence   number,  

 

  %p--backup   pieces   sequence   number  

 

  filesperset   --每个备份集中所包括的文件数  

 

  更多参数请参考本文开始时列出的书。  

 

  RMAN>run   {  

 

  2>   allocate   channel   c1   type   disk;  

 

  3>   set   limit   channel   c1   kbytes   8000;  

 

  4>   backup  

 

  5>   format   'e:\dbbackup\db_%d_%s_%p.bck'  

 

  6>   (database   filesperset=2   );  

 

  7>   }  

 

  RMAN-03022:正在编译命令:allocate  

 

  RMAN-03023:正在执行命令:allocate  

 

  RMAN-08030:分配的通道:c1  

 

  RMAN-08500:通道c1:sid=9   devtype=DISK  

 

  RMAN-03022:正在编译命令:set   limit  

 

  RMAN-03023:正在执行命令:set   limit  

 

  RMAN-03022:正在编译命令:backup  

 

  RMAN-03023:正在执行命令:backup  

 

  RMAN-08008:通道c1:正在启动full   数据文件备份集  

 

  RMAN-08502:set_count=6   set_stamp=417351064   creation_time=26-12   月-00  

 

  RMAN-08010:通道c1:正在指定备份集中的数据文件  

 

  RMAN-08522:输入数据文件fno=00003   name=C:\ORACLE\ORADATA\RMAN\USERS01.DBF  

 

  RMAN-08522:输入数据文件fno=00005   name=C:\ORACLE\ORADATA\RMAN\TOOLS01.DBF  

 

  RMAN-08013:通道c1:已创建1   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_6_1.BCK   comment=NONE  

 

  RMAN-08525:备份集完成,经过时间:00:00:03  

 

  RMAN-08008:通道c1:正在启动full   数据文件备份集  

 

  RMAN-08502:set_count=7   set_stamp=417351067   creation_time=26-12   月-00  

 

  RMAN-08010:通道c1:正在指定备份集中的数据文件  

 

  RMAN-08522:输入数据文件fno=00002   name=C:\ORACLE\ORADATA\RMAN\RBS01.DBF  

 

  RMAN-08522:输入数据文件fno=00006   name=C:\ORACLE\ORADATA\RMAN\INDX01.DBF  

 

  RMAN-08013:通道c1:已创建1   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_7_1.BCK   comment=NONE  

 

  RMAN-08525:备份集完成,经过时间:00:00:04  

 

  RMAN-08008:通道c1:正在启动full   数据文件备份集  

 

  RMAN-08502:set_count=8   set_stamp=417351071   creation_time=26-12   月-00  

 

  RMAN-08010:通道c1:正在指定备份集中的数据文件  

 

  RMAN-08522:输入数据文件fno=00001   name=C:\ORACLE\ORADATA\RMAN\SYSTEM01.DBF  

 

  RMAN-08011:备份集中包括当前控制文件  

 

  RMAN-08013:通道c1:已创建1   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_8_1.BCK   comment=NONE  

 

  RMAN-08013:通道c1:已创建2   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_8_2.BCK   comment=NONE  

 

  RMAN-08013:通道c1:已创建3   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_8_3.BCK   comment=NONE  

 

  RMAN-08013:通道c1:已创建4   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_8_4.BCK   comment=NONE  

 

  RMAN-08013:通道c1:已创建5   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_8_5.BCK   comment=NONE  

 

  RMAN-08013:通道c1:已创建6   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_8_6.BCK   comment=NONE  

 

  RMAN-08013:通道c1:已创建7   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_8_7.BCK   comment=NONE  

 

  RMAN-08525:备份集完成,经过时间:00:00:19  

 

  ....   ....  

 

  RMAN-08008:通道c1:正在启动full   数据文件备份集  

 

  RMAN-08502:set_count=9   set_stamp=417351090   creation_time=26-12   月-00  

 

  RMAN-08010:通道c1:正在指定备份集中的数据文件  

 

  RMAN-08522:输入数据文件fno=00004   name=C:\ORACLE\ORADATA\RMAN\TEMP01.DBF  

 

  RMAN-08013:通道c1:已创建1   段  

 

  RMAN-08503:段handle=E:\DBBACKUP\DB_RMAN_9_1.BCK   comment=NONE  

 

  RMAN-08525:备份集完成,经过时间:00:00:07  

 

  RMAN-03023:正在执行命令:partial   resync  

 

  RMAN-08003:启动部分恢复目录的resync  

 

  RMAN-08005:完成部分resync  

 

  RMAN-08031:释放的通道:c1  

 

  5、使用脚本功能  

 

  使用脚本的目的在于方便我们操作中的方便,操作上和存储过程相似。  

 

  RMAN>create   script   l0dbbackup   {  

 

  2>   allocate   channel   c1   type   disk;  

 

  3>   backup  

 

  4>   format   'e:\dbbackup\db_%d_%s_%p.bck'  

 

  5>   (database   filesperset=2   );  

 

  6>   }  

 

  RMAN-03022:正在编译命令:create   script  

 

  RMAN-03023:正在执行命令:create   script  

 

  RMAN-08085:已创建脚本l0dbbackup  

 

  RMAN>run   {execute   script   l0dbbackup;   }  

分享到:
评论

相关推荐

    RMAN Catalog创建、配置和管理.docx

    RMAN Catalog是RMAN的重要组成部分,它是一个中央数据库,用于存储有关所有备份、归档日志和其他相关恢复信息的元数据。这篇文档主要讨论了如何在RHEL 6.4系统上,使用Oracle 11.2.0.4版本创建、配置和管理RMAN ...

    Oracle rman catalog备份

    在“Oracle RMAN catalog备份”这个主题中,我们将深入探讨RMAN如何使用catalog进行备份操作,并理解相关的核心概念和技术细节。 首先,RMAN catalog是一个中央存储库,用于记录所有与备份和恢复相关的元数据,如...

    (053第3章)Rman catalog.pdf1

    使用RMAN连接到恢复目录数据库,并执行`create catalog`命令来创建恢复目录。创建完成后,恢复目录可以为多个目标数据库服务。 4. **注册目标数据库**: 在RMAN中,首先以`CATALOG`模式连接到目标数据库和恢复...

    手把手教你ORACLE RMAN异地备份

    "手把手教你ORACLE RMAN异地备份" 该教程旨在教你如何使用ORACLE RMAN实现异地备份,解决了由于数据量急剧增加、备份和恢复的困难问题。通过使用RMAN和EXP/IMP工具,用户可以实现本地数据库的异地备份,避免服务器...

    详解rman常用的命令及日常维护

    详解rman常用的命令及日常维护,包括rman的作用,rman的体系架构,nocatalog和catalog介绍与catalog配置,catalog恢复目录的配置过程,在恢复目录中添加rman 备份,升级的问题,rman全备案例

    完整Oracle rman备份恢复成功案例

    在创建 RMAN 库和 Catalog 注册目标数据库后,可以执行全备份以保护数据库。全备份是 RMAN 的默认备份模式,用于备份整个数据库。 Step 3: 执行增量备份 在执行全备份后,可以执行增量备份,以保护数据库的变化...

    RMAN学习笔记

    3. Catalog数据库:使用RMAN Catalog数据库可以跨多个数据库管理备份,提供集中化的备份记录。 六、RMAN实战操作 在学习笔记中,会详细讲解如何启动RMAN,如何配置通道,如何执行不同类型的备份和恢复操作,以及...

    oracle_rman增量备份脚本

    rman catalog rman_dlp/dlp create catalog tablespace rman_tbs; connect target sys/dg@primary register database; report schema; ``` 4. **设置备份参数:** - 配置保留策略,保证至少保留两份备份副本...

    rman(三思笔记)

    RMAN还支持使用RMAN的还原目录(RMAN Catalog)来管理和跟踪备份信息,这使得跨数据库的备份管理和恢复变得更加方便。 在数据库恢复方面,RMAN提供了一种叫做“无损恢复”的功能,即使在数据库运行时,也能进行部分...

    RMAN如何备份数据库.ppt

    RMAN> catalog= catalog=backup_user/backup_user RMAN> create catalog tablespace users ``` 3. 确认创建成功: ```sql SQL> connect backup_user/backup_user@ORDER SQL> select object_type,object_name ...

    Oracle RMAN快速入门指南

    % rman target / catalog rman/rman@rman ``` #### 四、RMAN的基本操作 RMAN提供了丰富的命令行接口,下面是一些常用的命令示例: 1. **不使用恢复目录连接RMAN**: ```bash % rman nocatalog RMAN> connect ...

    oracle rman 备份基础

    RMAN-06004: ORACLE error from recovery catalog database: RMAN-20001: target database not found in recovery catalog ``` **解决方法**: - 使用 `register database` 命令完成注册。 **RMAN命令**: ```...

    oracle rman 入门

    RMAN由多个关键部件组成,包括RMAN包本身、目标数据库、RMAN知识库(即CATALOG)、通道和相应的媒体管理软件。其中,通道是RMAN与外部设备(如磁盘、磁带等)交互的接口,而媒体管理软件则负责管理和控制备份介质。 ...

    Oracle RMAN 增量备份方案

    RMAN> connect target sys/redhat@orcl catalog rman/rman@catadb RMAN> register database; ``` #### 三、基于恢复目录的备份操作 **1. 查看相关信息** 在执行任何备份操作前,通常会先检查当前的数据库状态,...

    rman备份设置

    C:/>rman catalog rman01/rman01 target system/password@dancleRMAN ``` 通过以上步骤,您已经完成了基本的 RMAN 备份配置,可以开始执行备份任务。记住,定期检查和维护备份策略以适应数据库的增长和业务需求的...

    Linux 平台下 RMAN 全备 和 增量备份 shell 脚本

    - **RMAN 目录管理**:在使用 Catalog 模式时,需要确保 RMAN catalog 正确设置,并且能够访问相应的数据库实例。 - **备份验证**:定期验证备份的有效性非常重要,可以通过 `CROSSCHECK` 命令检查备份文件是否仍然...

    oracle rman备份命令

    RMAN CATALOG rman/rman CREATE CATALOG TABLESPACE 'RMAN'; ``` #### 2. 注册与注销数据库 在使用RMAN之前,需要先将数据库注册到catalog中。这可以通过以下命令完成: ```bash RMAN TARGET / CONNECT CATALOG ...

    rman备份与还原1

    RMAN Catalog是存储备份元数据的数据库,用于跟踪备份信息和恢复操作。使用Catalog可以更方便地管理大量备份集,并支持跨数据库的恢复操作。 10. RMAN与Flash Recovery Area: Flash Recovery Area是Oracle数据库...

    oracle的rman数据库备份方案.doc

    RMAN还支持使用Catalog数据库来管理和跟踪备份集,提供更高级的管理和恢复能力。 **CATALOG数据库** RMAN Catalog是一个中央数据库,用于存储所有备份和归档日志的相关信息。使用Catalog可以跨多个备份位置管理和...

    Oracle RMAN初学者指南

    C:\> rman catalog rman/rman ``` 随后执行: ```bash RMAN> create catalog tablespace rmants; ``` 4. **注册目标数据库至恢复目录**: 注册目标数据库至恢复目录是为了使RMAN能够识别该数据库,并对其...

Global site tag (gtag.js) - Google Analytics