• 描述Oracle Database 11g中新增的和增强的RMAN
功能
• 配置归档日志删除策略
• 使用Oracle 网络复制活动的数据库(无备份)
• 以多个部分的形式备份大型文件
• 创建归档备份以进行长期存储
• 管理恢复目录,例如合并多个目录版本
• 描述虚拟专用目录的用法
• 以下改进提高了性能:
– 物理备用数据库上的快速增量备份
– 改进的块介质恢复
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 可以故
障转移至其它归档重做日志目标。
后面的页提供了关于以下内容的详细信息:
• 通过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
。
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> }
|
|
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 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指定的相应设置。
如果你的业务需要长时间保留记录,则可以使用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、控制文件以及还原此备份所需的归档重做日志
文件和数据文件。此备份是数据库在某个时间点的快照,可用于将数据库还原到另一个
主机。
• 指定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 ...UNAVAILABLE或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中,为了便于管理可以将一个恢复目录(或目录中特定数据
库的元数据)合并到另一个恢复目录中。
在Enterprise Manager 中,选择“Availability(可用性)> Recovery Catalog Settings(恢复
目录设置)”,然后按照需要执行操作。
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 会重命名源
目录方案的存储脚本。
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 所有者将像使用标准基础目录一样使用该目录。
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 网络复制活动的数据库(无备份)
• 以多个部分的形式备份大型文件
• 创建归档备份以进行长期存储
• 管理恢复目录,例如合并多个目录版本
• 描述虚拟专用目录的用法