您的位置:首页 > 数据库 > Oracle

Oracle 11g New 使用RMAN 增强功能

2013-10-26 22:41 253 查看
• 描述Oracle Database 11g中新增的和增强的RMAN 功能
• 配置归档日志删除策略
• 使用Oracle 网络复制活动的数据库(无备份)
• 以多个部分的形式备份大型文件
• 创建归档备份以进行长期存储
• 管理恢复目录,例如合并多个目录版本
• 描述虚拟专用目录的用法

RMAN:新增功能

• 以下改进提高了性能:
– 物理备用数据库上的快速增量备份
– 改进的块介质恢复



RMAN 的新增功能
备份和恢复操作是一个关键的重要部分,即使存在各种级别的潜在故障和错误时,它也可保证信息对组织的可用性。使用Oracle Database 11g,Recovery Manager (RMAN) 增强功能可以提供以下优势:
物理备用数据库上的快速增量备份
可以在物理备用数据库上启用块更改跟踪(使用现有的ALTER DATABASE ENABLE/DISABLE BLOCK CHANGE TRACKINGSQL 语句)。之后RMAN 便会在备用
受管恢复期间跟踪更改的块。这样便可以卸载对备用数据库的块跟踪,并且相同的快速增量备份可以使用主数据库上可用的更改跟踪文件。此功能支持在物理备用数据库上以比以前版本更快的速度进行增量备份。
改进的块介质恢复性能
可使用RECOVER命令(以前的BLOCKRECOVER命令)恢复单个数据块。如果启用了闪回事件记录,并且此事件记录包含比较旧而又完好的块,则RMAN 可以使用这些块,从而提高块介质恢复的速度。
Oracle Database 11g:面向管理员的新增功能10-4
版权所有©2007,Oracle。保留所有权利。 10-4

优化的备份

• 使用ZLIB算法加快了压缩速度
CONFIGURE COMPRESSION ALGORITHM TO ZLIB;
• 增强了检测块损坏的功能,因而强化了保护功能

保留备份空间的同时加快了压缩速度
可使用CONFIGURE命令为RMAN 备份选择BZIP2或ZLIB压缩算法。新的ZLIB备份压缩算法比以前的BZIP2算法快40%。一个大型制药公司的实际数据仓库数据库使用这
两种算法的情况如下:使用BZIP2算法时压缩比率为2.0:1,而使用ZLIB算法时压缩比率为1.68:1。用下列命令配置备份压缩算法(用BZIP2或ZLIB替换alg_name):
CONFIGURE COMPRESSION ALGORITHM TO 'alg_name';

加强了块损坏的检测功能
除RMAN检测到的块损坏外,Oracle Database 11g还在V$DATABASE_BLOCK_CORRUPTION视图中记录活动的块损坏。检测或修复块损坏后,
Oracle DB 会自动更新此视图。由于新增了许多选项(如VALIDATE ... BLOCK和VALIDATE DATABASE等),VALIDATE命令得到了增强。

优化的备份

• 优化的还原备份可自动减少备份时间和存储空间
• 灵活使用支持VSS 的软件
– 允许数据库参与由符合VSS 的备份管理工具和存储产品协调的快照
– 通过RMAN 根据快照还原自动恢复数据库

优化的还原备份
对于事务处理恢复不需要的还原数据(例如,对于已提交的事务处理),不进行备份。优点是从总体上减少了备份时间和存储空间,因为它不备份应用到已提交的事务处理的还原数据。此优化是自动启用的。
与支持VSS 的应用程序集成
卷影复制服务(VSS) 是Windows 上的一个基础结构。Oracle VSS 写进程与支持VSS 的应用程序相集成。因此,可以使用支持VSS 的软件和存储系统备份和还原Oracle DB。其主要优点是可以***打开的数据库的影子副本。还可以在RMAN 中使用BACKUP INCREMENTAL
LEVEL 1 ...FROM SCN命令生成VSS 卷影副本的增量备份。

优化的备份

• 简化了多组件环境中的归档日志管理
• 通过将备份故障转移到可选目标提高了可用性



简化了多组件环境中的归档日志管理
此功能简化了多组件环境中的归档日志管理。它还提高了当快速恢复区中的归档日志丢失或无法访问时,备份归档日志时的可用性。
增强了删除策略的配置
仅当任何必需的组件(如Data Guard、流、闪回数据库等)不需要归档重做日志时,才能将其删除。
在Data Guard 环境中,将归档日志标识为删除之前,需要考虑所有备用目标(而不仅仅考虑必需的目标)。此配置是使用CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY命令指定的。
配置了归档日志删除策略后,该配置会应用到所有归档目标,包括快速恢复区。像快速恢复区一样,BACKUP ...DELETE INPUT和DELETE...ARCHIVELOG都使用此配置。备份恢复区时,如果快速恢复区中的归档重做日志不可访问或已损坏,则RMAN 可以故障转移至其它归档重做日志目标。

RMAN:新增功能

后面的页提供了关于以下内容的详细信息:
• 通过Intrafile 并行备份和还原来优化备份并提高备份的速度
• 简化活动数据库的复制
• 简化归档备份以进行长期存储
• 通过合并目录简化信息基础结构
• 通过限制DBA 备份目录访问所拥有的数据库“虚拟专用目录”来增强安全性

对超大型文件应用Intrafile 并行备份和还原
在备份单一大型数据文件时,现在可以使用多个并行服务器进程和“通道”来有效地分配工作量。这种使用多个部分的方法改善了备份的性能。
简化了活动数据库的复制
可以使用具有网络感知功能的DUPLICATE命令通过网络创建副本或备用数据库,而不必预先拥有数据库备份。通过Enterprise Manager GUI 这种易用性表现得尤为明显。
要长期存储的归档备份
备份联机时,使用KEEP选项创建的长期备份将不再需要保留所有的归档日志。相反,会备份需要将指定的数据文件恢复到一致时间点的归档日志(以及指定的数据文件和控制文件)。此功能减少了联机的长期KEEP备份所需的归档日志备份存储,并通过对需要还原和恢复备份的所有文件使用单一格式字符串简化了命令。

通过合并RMAN 目录简化了信息基础结构
使用新的IMPORT CATALOG命令可以将一个目录方案合并到另一个目录方案(可以是整个方案,也可以是该目录中特定数据库的元数据)。因为可以将在不同版本中创建的多个单独目录方案合并到单一目录方案中,因此简化了目录管理。
限制DBA 备份目录访问所拥有的数据库
恢复目录的所有者可授予或撤消数据库用户对目录子集的访问权限。此子集称为虚拟专用目录。

对超大型文件应用并行备份和还原

对单个文件进行多部分备份:
• 由RMAN 创建,具有指定的大小值
• 独立进行处理(串行或并行)
• 生成多片段备份集
• 提高了备份的性能

Oracle 数据文件最大为128 TB。在以前的版本中,RMAN 备份的最小单位是整个文件。这对于如此大的文件不适用。在Oracle Database 11g中,将在多个并行服务器进程之间分配各个文件的工作量。如果指定了SECTION
SIZE选项,则RMAN 可以将一个大文件分解为多个部分,然后独立备份和还原这些部分。换句话说,RMAN 可以对每个文件使用多个通道。每个通道备份一个文件部分。
每个文件部分都是文件中一系列连续的块。可按串行或并行方式独立处理每个文件部分。
以多个单独部分的形式备份文件,既可以提高性能又可以重新启动大型文件备份。
多部分备份作业可生成一个多片段备份集。每个片段都包含一个文件部分。多部分备份的所有部分的大小都相同(最后一部分可能除外)。每个文件最多有256 个部分。
提示:在备份驻留在少量磁盘上的大型文件时,不宜使用很高的并行度。
此功能已内置到RMAN 中。除Oracle Database 11g的常规安装外,不需要其它安装。因为早期版本无法还原多部分备份,所以必须至少将COMPATIBLE设置为11.0。

使用RMAN 多部分备份

BACKUP和VALIDATE DATAFILE命令选项:
SECTION SIZE <integer> [M | K | G]



使用RMAN 多部分备份
BACKUP和VALIDATE DATAFILE命令接受新的选项:
SECTION SIZE <integer> [M | K | G].
为每个备份部分指定计划的大小。该选项既是备份命令也是备份规范级别选项,所以可以在同一备份作业中对不同的文件应用不同的部分大小。
查看有关特定多部分备份的元数据:
• V$BACKUP_SET和RC_BACKUP_SET视图都有一个MULTI_SECTION列,用于表明是否为多部分备份。
• V$BACKUP_DATAFILE和RC_BACKUP_DATAFILE视图都有一个SECTION_SIZE列,用于指定多部分备份的每个部分中的块数。零意味着对整个文件进行备份。

复制数据库

• 使用网络(不需要备份)
• 包括自定义SPFILE
• 通过Enterprise Manager 或RMAN 命令行活动的源数据库



在Oracle Database 11g之前,可以使用RMAN 创建数据库复本以作为测试数据库或备用数据库。这需要源数据库、目标系统上的备份副本以及目标数据库本身。
Oracle Database 11g大大简化了此过程。通过使用Enterprise Manager 或RMAN DUPLICATE命令的FROM ACTIVE DATABASE子句,可以指示源数据库直接将图像副本和归档日志副本复制到辅助实例,而不再需要预先拥有备份。
通过实例间的网络连接将数据库文件从源数据库复制到目标数据库或AUXILIARY实例。
RMAN 随后使用“内存脚本”(仅包含在内存中)完成恢复并打开数据库。

活动的数据库复制:选择源

活动的数据库复制使用说明
• Oracle Net 必须知道源数据库和目标数据库。FROM ACTIVE DATABASE子句表示网络操作。
• 如果源数据库是打开的,则它必须已启用了归档事件记录。
• 如果源数据库处于已装载状态(并且不是备用数据库),则必须完全关闭该源数据库。
• 活动的数据库复制不影响源数据库的可用性。但是源数据库实例提供了CPU 周期和网络带宽。
Enterprise Manager 界面
在Enterprise Manager 中,选择“Data Movement(数据移动)> Clone Database(克隆数据库)”。





选择目标





活动的数据库复制使用说明
将口令文件复制到目标。目标数据库与源数据库必须拥有相同的SYS用户口令。换句话说,在活动的数据库复制过程之初,两个数据库(源和目标)必须有口令文件。
创建备用数据库时,来自主数据库的口令文件将覆盖备用数据库上的当前(临时)口令文件。使用命令行而且不复制备用数据库时,需要使用PASSWORD子句(通过RMAN DUPLICATE命令的FROM ACTIVE DATABASE子句)。

自定义目标选项



自定义目标选项
在Oracle Database 11g之前,由于需要对SPFILE 进行适合目标环境的更改,所以不复制SPFILE。在以NOMOUNT模式或在打开新复制的数据库之前要使用的RMAN 命令行中启动实例时,必须将SPFILE 复制到新的位置,对其进行编辑和指定。
使用Oracle Database 11g,只要提供参数列表、所需的值,系统就可对其进行设置。最明显的参数是那些其值包含目录规范的参数。系统会添加所有与你的选择相匹配的参数值(DB_FILE_NAME_CONVERT和LOG_FILE_NAME_CONVERT参数除外)。
请注意参数的大小写区分:大小写必须与PARAMETER_VALUE_CONVERT匹配。对于FILE_NAME_CONVERT参数,模式匹配是操作系统特定的。
在还原SPFILE 和发出ALTER SYSTEM SET命令修改该参数文件后(装载该实例之前),该功能等同于暂停数据库复制。
此示例演示了如何使用不同的数据库实例名在相同的主机上和相同的Oracle 主目录中克隆数据库。源数据库是test0924下,目标数据库是test026
:需要确认您的选择。

选择数据库配置



请注意观察新数据库如何使用你输入的信息。

调度作业执行





调度作业执行
现在,可遵循向导中的步骤调度作业,以便作业根据你的规范变为活动作业。

查看作业



查看作业
向下滚动以查看更多的详细信息并提交作业。请注意,ORCL数据库将在相同主机上的创建TEST1026数据库。

复制数据库:作业运行


复制数据库:作业运行
“Job Run(作业运行)”页的示例显示了下列步骤:





1. 准备源数据库
2. 创建控制文件
3. 创建目标目录
4. 副本初始化和口令文件
* 跳过副本或者传输控制文件
5. 准备目标数据库
6. 复制数据库
* 跳过创建备用控制文件
* 跳过切换克隆类型
7. 恢复数据库
8. 添加临时文件
9. 检查数据库和运行克隆后脚本
10.添加EM 目标
11.清除源临时目录

复制数据库脚本:

run {
2> SET NEWNAME FOR DATAFILE 1 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/system01.dbf';
3> SET NEWNAME FOR DATAFILE 2 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/sysaux01.dbf';
4> SET NEWNAME FOR DATAFILE 3 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/inventory.266.dbf';
5> SET NEWNAME FOR DATAFILE 4 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/users.260.dbf';
6> SET NEWNAME FOR DATAFILE 5 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/example01.dbf';
7> SET NEWNAME FOR DATAFILE 6 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/inventory03.dbf';
8> SET NEWNAME FOR DATAFILE 8 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/undotbs02.dbf';
9> SET NEWNAME FOR DATAFILE 9 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/undotbs01.dbf';
10> SET NEWNAME FOR DATAFILE 10 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/inventory01.dbf';
11> SET NEWNAME FOR TEMPFILE 1 TO '/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/temp01.dbf';
12> allocate channel tgt1 type disk;
13> allocate channel tgt2 type disk;
14> allocate auxiliary channel dup1 type disk;
15> DUPLICATE TARGET DATABASE TO 'test1026'
16> FROM ACTIVE DATABASE
17> LOGFILE
18> GROUP 1 ('/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/redo01.log') size 20M reuse,
19> GROUP 2 ('/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/redo02.log') size 20M reuse,
20> GROUP 3 ('/u01/app/oracle/product/11.2.0/dbhome_1/oradata/test1026/redo03.log') size 20M reuse
21> ;
22> }

RMAN DUPLICATE命令

DUPLICATE TARGETDATABASE
TO dbtest
FROM ACTIVE DATABASE
SPFILE PARAMETER_VALUE_CONVERT '/u01', '/u02'
SET SGA_MAX_SIZE = '200M'
SET SGA_TARGET = '125M'
SET LOG_FILE_NAME_CONVERT= '/u01','/u02'
DB_FILE_NAME_CONVERT = '/u01','/u02';

RMAN DUPLICATE命令
该示例假设你先前已连接到源和目标实例,它们有公用的目录结构但具有不同的顶级磁盘。该目标实例使用自动配置的通道。
• 此RMAN DUPLICATE命令可复制打开的数据库。
• FROM ACTIVE DATABASE子句表明你将不使用备份(这表示网络操作),目标处于打开或已装载状态。
• SPFILE子句表示在打开数据库之前还原和修改SPFILE。
• 重复的SET子句实际上将发出ALTER SYSTEM SET param = value
SCOPE=SPFILE命令。可以根据需要提供任意多这样的子句。
先决条件
• AUXILIARY实例处于NOMOUNT状态,该实例是使用最低PFILE 选项启动的。
• PFILE 只需要DB_NAME和REMOTE_LOGIN_PASSWORFILE参数。
• 口令文件必须存在,并且与目标具有相同的SYS用户口令。
• 目录结构必须具有适当的权限。
• 将网络服务名用作SYS用户连接到AUXILIARY。

使用DUPLICATE命令创建备用数据库

DUPLICATE TARGETDATABASE
FOR STANDBY
FROM ACTIVE DATABASE
SPFILE PARAMETER_VALUE_CONVERT '/u01', '/u02'
SET "DB_UNIQUE_NAME"="FOO"
SET SGA_MAX_SIZE = "200M"
SET SGA_TARGET = "125M"
SET LOG_FILE_NAME_CONVERT = '/u01','/u02'
DB_FILE_NAME_CONVERT = '/u01','/u02';
复制备用数据库
该示例假设,你将连接到目标和辅助实例,并且这两种环境都具有相同的磁盘和目录结构。
FOR STANDBY FROM ACTIVE DATABASE子句将启动备用数据库的创建过程,并且不使用备份。
该示例将u01用作源磁盘、u02用作顶级目标目录。在SPFILE 中替换所有与你的选择相匹配的参数值(DB_FILE_NAME_CONVERT和LOG_FILE_NAME_CONVERT参数除外)。
如果PARAMETER_VALUE_CONVERT设置了参数指定的文件名,而SET也设置了该参数指定的文件名,则SET值会覆盖PARAMETER_VALUE_CONVERT设置。
如果在DUPLICATE命令中指定了DB_FILE_NAME_CONVERT子句,则其文件名设置会覆盖SPFILE SET指定的相应设置。

使用EM 创建归档备份

如果你的业务需要长时间保留记录,则可以使用RMAN 创建数据库或表空间的自包含归档备份。RMAN 不对此备份应用常规保留策略。将归档备份放到快速恢复区以外的其它长期存储区。
要长期保留备份,请在Enterprise Manager 中执行下列步骤:
1.选择“Availability(可用性)> Schedule Backup(调度备份)> Schedule Customized Backup(调度定制备份)”。
2.按照“Schedule Customized Backup(调度定制备份)”向导中的步骤进行操作,直到进入“Settings(设置)”页。
3.单击“Override Current Settings(覆盖当前设置)> Policy(策略)”。在“Override Retention Policy(覆盖保留策略)”部分中,可选择将备份保留指定的天数。还原点是基于备份作业名称生成的。
使用KEEP选项创建的备份包括SPFILE、控制文件以及还原此备份所需的归档重做日志文件和数据文件。此备份是数据库在某个时间点的快照,可用于将数据库还原到另一个主机。

使用RMAN 创建归档备份

• 指定KEEP子句,当数据库联机时包括数据文件和归档日志备份集:

KEEP {FOREVER | UNTIL TIME [=] ' date_string '}
NOKEEP
[RESTORE POINT rsname]

• 列出RMAN 资料档案库已知的所有还原点:
LIST RESTORE POINT ALL;
• 显示特定的还原点:
LIST RESTORE POINT 'rsname';

使用RMAN 创建归档备份
在Oracle Database 11g之前,如果需要将联机备份保留指定的一段时间,则RMAN 假定你可能希望在这段时间内的任何时间执行时间点恢复,并且RMAN 在该时间段内保留所有归档日志,除非你指定了NOLOGS。但是,你可能需要仅在指定的时间内保留备份(并使其保持一致和可恢复)。
通过Oracle Database 11g,可以使用KEEP选项生成归档数据库备份以满足业务或法律需求。KEEP选项是备份集(而不是单个备份片段)或副本的属性。KEEP选项可覆盖任何为此备份配置的保留策略。可以保留归档备份,这样可以将这些备份视为在指定的时间后废弃(KEEP
UNTIL) 或永不废弃(KEEP FOREVER)。KEEP FOREVER子句需要使用恢复目录。
RESTORE POINT子句将在控制文件中创建“一致性”点。它为特定的SCN 分配名称。
SCN 是在完成备份数据文件后捕获的。可在此时间点还原和恢复归档备份,使数据库处于打开状态。与之相反,UNTIL TIME子句指定了备份必须保留到的日期。
RMAN 包含数据文件、归档日志文件(仅那些需要恢复联机备份的文件)、相关自动备份文件和spfile。所有这些文件必须转到相同的介质系列(或磁带组)并具有相同的KEEP属性。

管理归档数据库备份

1. 归档数据库备份:
CONNECT TARGET /
CONNECT CATALOG rman/rman@catdb

CHANGE BACKUP TAG 'consistent_db_bkup'
KEEP FOREVER;

2. 更改数据库副本的状态:
CHANGE COPY OF DATABASE CONTROLFILE NOKEEP;

管理归档数据库备份
CHANGE命令会更改与配置的保留策略有关的备份或副本的免除状态。例如,可以指定CHANGE ...NOKEEP,用于生成当前从适合于OBSOLETE状态的保留策略中免除的备份。
第一个示例将一致的备份更改为归档备份,计划在场外存储该归档备份。因为该数据库是一致的,所以无需对其进行恢复,不需要与备份一起保存归档重做日志。
第二个示例指定数据文件和控制文件的任何长期图像副本都应失去其免除状态,以便根据现有保留策略变为过期:
废弃的子句:KEEP [LOGS | NOLOGS]
首选语法:KEEP RESTORE POINT <rsname>
注:RESTORE POINT选项对CHANGE无效。
无法对存储在快速恢复区中的文件使用CHANGE ...UN***AILABLE或KEEP。

管理恢复目录

管理恢复目录:
1. 创建恢复目录。
2. 在恢复目录中注册目标数据库。
3. 如果需要,合并恢复目录。
4. 如果需要,编录任何早期备份。
5. 如果需要,为特定用户创建虚拟恢复目录。
6. 保护恢复目录。

管理恢复目录的基本工作流并不陌生。但是,其中的两个重要功能发生了变化,以增强整体性能:RMAN 资料档案库和虚拟专用目录已合并在一起,以允许分离责任。
1.创建恢复目录。
2.在恢复目录中注册目标数据库。此步骤使RMAN 可以在恢复目录中存储目标数据库的元数据。
3.如果需要,还可以使用IMPORT CATALOG命令合并恢复目录(Oracle Database 11g中的新增功能)。
4.如果需要,编录其记录不再存储在目标控制文件中的任何早期备份。
5.如果需要,为特定用户创建虚拟恢复目录并确定允许其访问的元数据(Oracle Database 11g中的新增功能)。
6.通过在备份和恢复策略中包含恢复目录来保护恢复目录。

已知功能和新增功能
恢复目录包含与各个已注册目标数据库中RMAN 操作有关的元数据。该目录包含下列类型的元数据:
• 数据文件和归档重做日志备份集以及备份片段
• 数据文件副本
• 归档重做日志及其副本
• 目标数据库中的表空间和数据文件
• 存储脚本,它们是用户创建的已命名的RMAN 命令序列
• 持久的RMAN 配置设置
在恢复目录中登记目标数据库以供RMAN 使用称为注册。建议的做法是在单个恢复目录中注册所有目标数据库。例如,可以在catdb数据库中catowner方案拥有的单个目录中注册prod1、prod2和prod3数据库。
集中恢复目录(又称基本恢复目录)的所有者,可授予或撤消其他数据库用户对目录的有限访问权限。所有的元数据都存储在基础目录方案中。
每个受限用户都拥有对其元数据的完整读写权限,这称为虚拟专用目录。
恢复目录从每个已注册目标数据库的控制文件获得重要的RMAN 元数据。重新同步恢复目录可确保RMAN 从控制文件获得的元数据是最新的。
可以将存储脚本用作命令文件的替代项,以用于管理经常使用的RMAN 命令序列。该脚本存储在恢复目录中,而不是文件系统中。本地存储的脚本与创建脚本时RMAN 连接到的目标数据库相关联,仅当连接到此目标数据库时才能执行该脚本。可针对在恢复目录中注册的任意数据库运行全局存储的脚本。
可以在你使用的环境中或已使用了不同版本的数据库的环境中使用恢复目录。因此,你的环境中可包含不同版本的RMAN 客户机、恢复目录数据库、恢复目录方案和目标数据库。在Oracle Database 11g中,为了便于管理可以将一个恢复目录(或目录中特定数据库的元数据)合并到另一个恢复目录中。

管理目录:使用EM



在Enterprise Manager 中,选择“Availability(可用性)> Recovery Catalog Settings(恢复目录设置)”,然后按照需要执行操作。

IMPORT CATALOG命令

1. 连接到目标恢复目录:
CONNECT CATALOG cat111/oracle@destdb;
2. 导入所有已注册数据库的元数据:
IMPORT CATALOG cat102/oracle@srcdb;
3. 导入两个已注册数据库的元数据:
IMPORT CATALOG cat92/oracle@catdb DBID=1423241, 1423242;
4. 导入多个目录的元数据:
IMPORT CATALOG cat102/rman@srcdb;
IMPORT CATALOG cat101/rman@srcdb;
IMPORT CATALOG cat92/rman@srcdb NOUNREGISTER;

IMPORT CATALOG命令
使用IMPORT CATALOG命令,可以将元数据从一个恢复目录方案导入到另一个目录方案。如果创建了不同版本的目录方案来存储多个目标数据库的元数据,则使用此命令可以为所有数据库维护单个目录方案。
1. RMAN 必须连接到目标恢复目录(如cat111方案),这是要将目录数据导入到其中的目录。下面是显示的所有示例中的第一个步骤。
IMPORT CATALOG <connectStringSpec>
[DBID = <dbid> [, <dbid>,…]]
[DB_NAME=<dbname>[, <dbname,…]]
[ NO UNREGISTER ];
<connectStringSpec>是源恢复目录连接字符串。该源恢复目录方案的版本必须等于RMAN 可执行文件的当前版本。如果需要,将源目录升级到当前RMAN 版本。
DBID:可以指定应从源目录方案导入其元数据的数据库ID 的列表。没有指定时,RMAN 会将所有数据库ID 的元数据从源目录方案合并到目标目录方案。如果已在恢复目录方案中注册了元数据已合并的数据库,则RMAN 会发出错误。

DB_NAME:可以指定应导入其元数据的数据库名称的列表。如果数据库名称不明确,则RMAN 会发出错误。
NO UNREGISTER:默认情况下,成功导入后会从源恢复目录方案中注销导入的数据库ID。使用NO UNREGISTER选项,可以强制RMAN 将导入的数据库ID 保留在源目录方案中。

2.在此示例中,cat102用户拥有srcdb数据库中的RMAN 目录(10.2 版)。你希望RMAN 导入所有已注册数据库后在源目录中注销它们。
3.cat92用户拥有srcdb数据库中的RMAN 目录(9.2 版)。你希望RMAN 导入DBID为1423241和1423242的数据库,然后在源目录中注销这些数据库。
4.srcdb数据库包含三种不同的恢复目录。RMAN 在destdb数据库中将这些目录中所有已注册的数据库ID 的元数据导入到cat111方案中。除在cat92方案中注册的数据库之外,所有导入的目标数据库都会从其源目录中注销。
更多使用情况详细信息
• 确保不要同时在源目录方案和目标目录方案中注册目标数据库。如果在两个方案中都注册了目标数据库,则从源目录注销此数据库,然后重试进行导入。
• 如果该操作在导入过程中失败,则将回退导入。不会存在部分导入的状态。
• 如果源目录方案和目标目录方案中存储的脚本出现名称冲突,则RMAN 会重命名源目录方案的存储脚本。

使用RMAN 虚拟专用目录

1. 创建RMAN 基础目录:

RMAN> CONNECT CATALOG catowner/oracle@catdb;
RMAN> CREATE CATALOG;

2. 为VPC 所有者授予RECOVERY_CATALOG_OWNER权限:

SQL> CONNECT SYS/oracle@catdb AS SYSDBA
SQL> GRANT RECOVERY_CATALOG_OWNER to vpcowner

3a. 为VPC 所有者授予REGISTER权限,或者:

RMAN> CONNECT CATALOG catowner/oracle@catdb;
RMAN> GRANT REGISTER DATABASE TO vpcowner;

3b. 为VPC 所有者授予CATALOG FOR DATABASE权限:
RMAN>GRANT CATALOG FOR DATABASE db10g TO vpcowner

使用RMAN 虚拟专用目录
可以为数据库和用户组创建虚拟专用RMAN 目录。
1.目录所有者将创建基础目录。
2. 目录数据库上的DBA 将创建拥有该虚拟专用目录(VPC) 的用户,并为其授予RECOVERY_CATALOG_OWNER权限。
3. 基础目录所有者可为VPC 所有者授予对先前注册的数据库的访问权限,或者为VPC 所有者授予REGISTER权限。
GRANT CATALOG命令如下:
GRANT CATALOG FOR DATABASE prod1, prod2 TO vpcowner;
GRANT REGISTER命令如下:
GRANT REGISTER DATABASE TO vpcowner;
然后,虚拟目录所有者可连接到特定目标的目录,或者注册一个目标数据库。完成VPC 配置之后,VPC 所有者将像使用标准基础目录一样使用该目录。

使用RMAN 虚拟专用目录

4a. 为11g客户机创建虚拟目录,或者:

RMAN> CONNECT CATALOG vpcowner/oracle@catdb;
RMAN> CREATE VIRTUAL CATALOG;

4b. 为11g之前的客户机创建虚拟目录:

SQL> CONNECT vpcowner/oracle@catdb
SQL> exec catowner.dbms_rcvcat.create_virtual_catalog;

5. 在目录中注册新的数据库:

RMAN> CONNECT TARGET / CATALOG vpcowner/oracle@catdb;
RMAN> REGISTER DATABASE;

6. 使用虚拟目录:

RMAN> CONNECT TARGET / CATALOG vpcowner/oracle@catdb;
RMAN> BACKUP DATABASE;

4.创建虚拟专用目录。
a.如果目标数据库是Oracle Database 11g数据库并且RMAN 客户机是11g客户机,则可使用RMAN 命令:
CREATE VIRTUAL CATALOG;
b.如果目标数据库是Oracle Database 10g版本2 或者更早版本(使用兼容客户机),则必须执行SQL*Plus 提供的过程:
base_catalog_owner.dbms_rcvcat.create_virtual_catalog;
5.使用VPC 所有者登录名连接到该目录,将其作为常规目录使用。
6.虚拟目录所有者只能看到对其有访问权限的数据库。要执行大多数RMAN 操作,还需要拥有对目标数据库的SYSDBA或SYSOPER权限。

小结

• 描述Oracle Database 11g中新增的和增强的RMAN 功能
• 配置归档日志删除策略
• 使用Oracle 网络复制活动的数据库(无备份)
• 以多个部分的形式备份大型文件
• 创建归档备份以进行长期存储
• 管理恢复目录,例如合并多个目录版本
• 描述虚拟专用目录的用法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: