Oracle DB使用RMAN恢复目录(四)

2014-11-24 16:53:45 · 作者: · 浏览: 2
限。
必须连接到目录数据库,而且目录数据库必须处于打开状态。不必连接到目标数据库。
必须再次输入UPGRADE命令来确认升级。如果恢复目录的版本已高于RMAN 执行文件所需的版本,你将收到错误消息。但是,如果恢复目录是最新版本,RMAN 将允许此命令运行,所以可根据需要重新创建程序包。
RMAN 会在消息日志中显示升级期间生成的所有错误消息。
如果不再需要保留恢复目录,可以使用DROP CATALOG命令从表空间中删除恢复目录方案。删除目录时,会删除目录中注册的所有目标数据库的备份恢复目录记录。
只能在RMAN 提示符下执行此命令。
必须通过CATALOG命令行选项或CONNECT CATALOG命令连接到恢复目录数据库。
目录数据库必须处于打开状态。不必连接到目标数据库。
请输入命令两次,确认要删除方案。
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;必须等于RMAN 可执行文件的当前版本
IMPORT CATALOG cat101/rman@srcdb;
IMPORT CATALOG cat92/rman@srcdb NOUNREGISTER;
使用IMPORT CATALOG命令可将元数据从一个恢复目录方案导入至其它目录方案中。如果创建了不同版本的目录方案来存储多个目标数据库的元数据,则使用此命令可以为所有数据库维护单个目录方案。
IMPORT CATALOG
[DBID = [, ,…]]
[DB_NAME=[,
[ NO UNREGISTER ];
是源恢复目录连接字符串。源恢复目录方案的版本必须等于RMAN 可执行文件的当前版本。如果需要,将源目录升级到当前RMAN 本版。
DBID:你可以指定数据库ID 的列表,数据库ID 的元数据应从源目录方案导入。未指定列表时,RMAN 将所有数据库ID 的元数据从源目录方案合并到目标目录方案中。如果已在恢复目录方案中注册了合并元数据的数据库,RMAN 就会发出错误消息。
DB_NAME:可以指定应导入其元数据的数据库的名称列表。如果数据库名称不明确,RMAN 就会发出错误消息。
NO UNREGISTER:默认情况下,导入的数据库ID 在成功导入后从源恢复目录方案中注销。使用NO UNREGISTER选项,可以强制RMAN 将导入的数据库ID 保留在源目录方案中。
导入示例(续)
1. RMAN 必须连接到需要将目录数据导入到的目标恢复目录,例如cat111 方案。这是所有给定示例中的第一步。
注:源恢复目录方案的版本必须等于RMAN 可执行文件的当前版本。导入早期版本的目录之前,必须将早期版本升级至RMAN 可执行文件的版本。
2. 在本例中,cat102用户在srcdb数据库中拥有一个RMAN 目录。你希望RMAN 导入所有注册的数据库并在源目录中注销这些数据库。
3. cat92用户在srcdb数据库中拥有一个RMAN 目录。你希望RMAN 导入DBID为1423241和1423242的数据库,并在源目录中注销这些数据库。
4. srcdb数据库包含三个不同的恢复目录。RMAN 将所有数据库ID(已在这些目录中注册)的元数据导入到destdb数据库中的cat111方案。除在cat92方案中注册的数据库之外,所有导入的目标数据库将从其源目录中注销。
有关使用的其它详细资料
确保没有目标数据库既在源目录方案中注册,又在目标目录方案中注册。如果某个目标数据库在这两个方案中都注册了,请将此数据库从源目录中注销,然后重试导入。
如果导入过程中操作失败,则将回退导入。从不存在部分导入的情况。
源目录方案和目标目录方案中的存储脚本名称发生冲突时,RMAN 会重命名源目录方案的存储脚本。
创建和使用虚拟专用目录
使用此功能可以合并RMAN 资料档案库并保持职责分离,这是一项基本安全要求。
RMAN 目录已被增强,可用于创建数据库组和用户组的虚拟专用RMAN 目录。该目录的所有者将创建基本目录并为虚拟目录的所有者授予RECOVERY_CATALOG_OWNER权限。目录的所有者可为虚拟目录的所有者授予访问已注册数据库的权限或REGISTER权限。然后,虚拟目录所有者可连接到特定目标的目录,或者注册一个目标数据库。完成配置后,VPC 所有者可像使用标准基本目录一样使用虚拟专用目录。
作为目录所有者,你可以访问该目录中所有已注册的数据库信息。你可以列出使用SQL*Plus 命令注册的所有数据库:
SELECT DISTINCT db_name FROM DBINC;
作为虚拟目录所有者,你只能查看授予了你访问权限的数据库。
注:如果目录所有者未被授予对目标数据库的SYSDBA或SYSOPER权限,则无法执行大多数RMAN 操作。
使用RMAN 虚拟专用目录
1. 创建RMAN 基本目录:
RMAN> CONNECT CATALOG catowner/oracle@catdb
RMAN> CREATE CATALOG;
2. 将RECOVERY_CATALOG_OWNER授予给VPC 所有者:
SQL> CONNECT SYS/oracle@catdb AS SYSDBA
SQL> GRANT RECOVERY_CATALOG_OWNER to vpcowner;
3a.将REGISTER授予给VPC 所有者:
RMAN> CONNECT CATALOGcatowner/oracle@catdb
RMAN> GRANT REGISTER DATABASE TO vpcowner;
3b.或将CATALOG FOR DATABASE授予给VPC 所有者:
RMAN>GRANT CATALOG FOR DATABASE db10g TO vpcowner;
可以为数据库组和用户组创建虚拟专用RMAN 目录。
1. 目录所有者将创建基本目录。
2. 目录数据库的DBA 可以创建拥有虚拟专用目录(VPC) 的用户,并授予其RECOVERY_CATALOG_OWNER权限。
3. 基本目录的所有者可为VPC 所有者授予访问先前注册的数据库的权限或授予REGISTER权限。GRANT CATALOG命令如下:
GRANT CATALOG FOR DATABASE prod1, prod2 TO vpcowner;
GRANT REGISTER命令如下:
GRANT REGISTER DATABASE TO vpcowner;
然后,虚拟目录所有者可连接到特定目标的目录,或者注册一个目标数据库