读书笔记整理十:使用RMAN 增强功能

读书笔记整理十:使用RMAN 增强功能

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

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

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

在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 命令修改该参数文件后(装载该实例之
前),该功能等同于暂停数据库复制。

RMAN DUPLICATE 命令
DUPLICATE TARGET DATABASE
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 TARGET DATABASE
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';

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

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 NO UNREGISTER;

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 权
限:
3a. 为VPC 所有者授予REGISTER 权限,或者:
3b. 为VPC 所有者授予CATALOG FOR DATABASE 权限:
SQL> CONNECT SYS/oracle@catdb AS SYSDBA
SQL> GRANT RECOVERY_CATALOG_OWNER to vpcowner
RMAN> CONNECT CATALOG catowner/oracle@catdb;
RMAN> GRANT REGISTER DATABASE TO vpcowner;
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;

使用RMAN 虚拟专用目录(续)
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 权限。

---------------------------整理自11g新功能


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当出现"bash: rman: 未找到命令"的错误提示时,说明系统无法找到rman命令。这通常是因为rman命令没有被正确安装或者没有设置正确的环境变量导致的。 要解决这个问题,你可以按照以下步骤进行操作: 1. 首先,确认你已经安装了rman命令。你可以通过运行"which rman"命令来检查是否已经安装。如果没有安装,你需要安装Oracle数据库软件,这将包含rman命令。 2. 如果已经安装了rman命令,但仍然出现"bash: rman: 未找到命令"的错误提示,那么可能是因为系统没有正确设置环境变量。rman命令通常位于Oracle数据库软件的安装目录下,你需要将该目录添加到系统的环境变量中。 - 如果你是root用户,可以编辑"/etc/profile"文件并在文件末尾添加以下行: ``` export PATH=$PATH:/path/to/rman/directory ``` 将"/path/to/rman/directory"替换为实际的rman命令所在的目录。 - 如果你是普通用户,可以编辑你的用户配置文件,如"~/.bashrc",并在文件末尾添加相同的行。 3. 添加完以上的环境变量后,保存文件并重新加载环境变量。 - 如果你是root用户,可以运行以下命令重新加载环境变量: ``` source /etc/profile ``` - 如果你是普通用户,可以运行以下命令重新加载环境变量: ``` source ~/.bashrc ``` 4. 完成以上步骤后,再次运行rman命令,应该就可以找到并使用了。 请注意,以上步骤是在Linux系统下操作的,如果你的操作系统不同,可能会有些许差异。另外,如果你在安装Oracle数据库软件或配置环境变量的过程中遇到了问题,你可以参考相关的文档或咨询Oracle官方支持以获得更详细的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值