3.7 自测题答案
创建和使用RMAN恢复目录
1.正确答案是A、D和E。使用恢复目录时,可以创建和维护存储脚本。另外,创建恢复目录后,它可以保存数据库表空间和数据文件所有更改的运行历史。最后,可将多个数据库的恢复信息存储在恢复目录中。
B、C是错误的。B是错误的,这不是使用恢复目录的正当理由,即使使用恢复目录,也始终会将RMAN仓库信息存储在控制文件中。C也不是正当理由,除了另一个数据库的备份外,还需要更多地设置和维护恢复目录。另外,控制文件更容易管理,而且可以使用CONTROL_FILE_RECORD_KEEP_TIME参数控制其大小。每当数据库结构发生变化时,使用ALTER DATABASE BACKUP CONTROLFILE TO TRACE导出控制文件的副本会简单得多。
2.正确答案是A。如果未使用恢复目录,则可以通过动态性能视图,如V$BACKUP_SET和V$DATAFILE_COPY了解每个目标的RMAN备份信息。这些视图的信息来自目标数据库控制文件。
B、C、D是错误的。B是错误的,因为RC_视图仅存在于包含恢复目录的数据库中。C是错误的,因为DBA_视图不维护RMAN信息。D是错误的,因为V$CONTROLFILE仅包含目标数据库控制文件的每个副本的位置。
3.正确答案是A。由于设置了环境变量ORACLE_SID, RMAN命令CONNECT会自动使用ORACLE_SID的值连接到恢复目录。
B、C、D是错误的。B是错误的,因为无须在CREATE CATALOG命令中指定恢复目录数据库的名称。C是错误的,原因是它在目标数据库中创建恢复目录。D是错误的,因为无法组合CONNECT CATALOG和CREATE CATALOG命令。
4.正确答案是C。预定义角色RECOVERY_CATALOG_OWNER包括系统权限ALTER SESSION、CREATE CLUSTER、CREATE DATABASE LINK、CREATE PROCEDURE、CREATE SEQUENCE、CREATE SESSION、CREATE SYNONYM、CREATE TABLE、CREATE TRIGGER、CREATE TYPE和CREATE VIEW。
A、B、D是错误的。A和B是错误的,因为并不存在RECOVERY_ CATALOG和CATALOG_OWNER角色。D是错误的,因为它为恢复目录所有者提供了超出需要的系统权限。
5.正确答案是B。对于在RMAN范围外手动执行的任何备份,或在创建恢复目录前目标数据库控制文件过时的备份,都必须使用手动方式将它们注册到恢复目录中。
A、C、D是错误的。将数据库注册到恢复目录时,A、C和D都是要执行的步骤。
6.正确答案是B和D。完整地重新同步创建控制文件快照,同时同步数据库结构信息以及不在恢复目录的目标数据库控制文件中的备份信息。部分重新同步比较目标数据库的控制文件与控制文件。
A、C是错误的。A是错误的,因为可以按手动方式,将控制文件中过时的RMAN记录添加到恢复目录中。C是错误的,因为完整重新同步使用控制文件的副本(控制文件快照)进行比较,而部分重新同步不这么做。
7.正确答案是A。对于本地脚本而言,只能在创建脚本时在已经连接的目标数据库上使用。
B、C、D、E是错误的。B和C是错误的,因为全局和本地脚本都存储在恢复目录中。D是错误的,因为任何脚本每次都在一个数据库中运行。E是错误的,因为只有用户通过身份验证连接到恢复目录,才能使用其中的本地脚本和全局脚本。
8.正确答案是A。无论是本地存储脚本还是全局存储脚本都必须在RUN块中运行,如下:
run {execute script full_backup; }。
B、C、D是错误的。B是错误的,因为必须将脚本放在RUN块中。C是错误的,因为可以在包含EXECUTE SCRIPT命令的RUN命令中添加通道分配,或使用默认通道。D是错误的,因为本地脚本和全局脚本仅适用于当前连接的目标数据库。
保护RMAN恢复目录
9.正确答案是C。RESYNC CATALOG命令同步目标数据库的控制文件信息与恢复目录数据库中的信息,CATALOG START WITH命令添加不再在目标数据库控制文件中的任何备份信息。
A、B、D是错误的。A是错误的,因为无须重新创建恢复目录,只需要对其进行重新同步。B是错误的,因为数据库本身已经注册到恢复目录中。D是错误的,因为无须重新创建恢复目录,也无须重新注册目标数据库。
10.正确答案是B。如果恢复目录模式版本低于RMAN客户端版本,则必须使用UPGRADE CATALOG。
A、C、D是错误的。A和D是错误的,原因是如果任一数据库的结构发生了变化,都应备份控制文件,但这并不会触发恢复目录的升级。C是错误的,因为可以使用早于恢复目录数据库版本的RMAN客户端,当然,采用这种做法时将无法使用更新RMAN客户端版本的一些功能,如闪回数据库。
11.正确答案是D。必须使用SQL命令,为将要访问虚拟专用目录的每个用户授予RECOVERY_CATALOG_OWNER角色。
A、B、C是错误的。A是错误的,因为SELECT_CATALOG_ROLE允许访问数据库的数据字典,但不控制对RMAN虚拟目录的访问。B和C是错误的,因为数据库的默认安装中不存在这些角色。
12.正确答案是D。要创建虚拟目录,你要连接到基本目录,创建虚拟目录,连接到目标数据库,注册数据库,最后备份数据库。只需要将虚拟目录创建一次,并且只需要将每个目标数据库注册一次。在连接到基本目录和目标数据库后,可以执行后续备份操作。
A、B、C是错误的。A是错误的,因为基本目录和虚拟目录在同一实例上(服务名为CATDB2),而不在目标数据库DW上。B是错误的,因为EXEC CATOWNER.DBMS_RCVCAT.CREATE_VIRTUAL_CATALOG仅适用于早于11g的客户端,必须由虚拟目录所有者在SQL>提示符下运行。C是错误的,因为只有已经将数据库注册到基本目录,才能由基本目录所有者运行GRANT CATALOG FOR DATABASE DW TO VPC1。