Veritas NetBackup™ for Oracle 管理指南
- 介绍
- NetBackup for Oracle 快速入门
- 安装 NetBackup for Oracle
- Oracle 策略配置
- 为 NetBackup for Oracle 配置做准备
- Oracle 智能策略的实例管理
- 关于 Oracle 智能策略 (OIP)
- 关于基于脚本或模板的 Oracle 策略
- 执行 Oracle 的备份和还原
- 关于 NetBackup for Oracle 备份
- 关于 NetBackup for Oracle 还原
- 在 Microsoft Windows 群集环境中使用 NetBackup for Oracle
- 引导式恢复
- 带有 Snapshot Client 的 NetBackup for Oracle
- 故障排除
- 排除 RMAN 备份或还原错误
- 附录 A. 实际应用程序群集
- 附录 B. 使用 NetBackup 保护 Oracle RAC 的最佳做法
- 附录 C. 重复数据删除最佳做法
- 附录 D. Snapshot Client 对 SFRAC 的支持
- 附录 E. 基于脚本的块级增量式 (BLI) 备份(UNIX 和 Linux 系统上没有 RMAN)
- 附录 F. XML 存档程序
- 附录 G. 注册授权位置
RAC 配置示例:故障转移名称不可用,备份负载平衡,一个带有自定义脚本的策略
不带故障转移名称的负载平衡的备份必须克服以前配置的组合挑战。 由于故障转移名称不存在,因此 NetBackup 调度程序必须尝试在两个主机上执行备份脚本。 在这种情况下,该脚本必须仅在其中一个主机上启动 RMAN。 因为 RMAN 可以在两个实例上分配通道,所以用户控制的请求必须提供特定于主机的名称。 要求是来自 NetBackup 介质服务器的逆向连接必须可以从正确的主机检索数据。
策略应指定两个客户端名称 hostname1 和 hostname2 或 vipname1 和 vipname2。 指定客户端名称旨在确保至少在当前运行的一台主机上执行备份脚本。
群集中的两个主机必须都能够访问备份脚本。群集文件系统是一个理想的位置。
应自定义备份脚本,以便仅在一个客户端上启动 RMAN。如果在主主机上执行备份脚本,则启动 RMAN 并执行备份。 如果在辅助主机上执行备份脚本并且主主机已启动,则以状态 0 退出,以便 NetBackup 调度程序不再重试此客户端。 如果在辅助主机上执行备份脚本并且主主机已关闭,则启动 RMAN 并执行备份。 可以通过对主主机进行 tnsping 或者甚至通过对数据库的查询来构建脚本自定义。 使用此自定义可查看其他实例是否打开且能够执行备份。
$ select INST_ID, STATUS, STARTUP_TIME, HOST_NAME from gv$instance; INST_ID STATUS STARTUP_T HOST_NAM ---------- ------------ --------- --------- 1 OPEN 13-JAN-09 vipname1 2 OPEN 13-JAN-09 vipname2
不得将备份脚本配置为发送 NB_ORA_CLIENT 的单个值。 这是因为 NetBackup 介质服务器需要根据哪个主机发起了用户控制的备份请求,逆向连接到正确的主机。
使用以下三个选项之一将备份配置为随每个备份请求提供特定于主机的客户端名称:
将 RMAN 配置为将特定通道绑定到特定实例,并为备份映像存储提供每个通道上的关联客户端名称。 此外,将 RMAN 配置为逆向连接到请求主机以进行数据传输。
ALLOCATE CHANNEL 1 ... PARMS='ENV=(NB_ORA_CLIENT=vipname1)' CONNECT='sys/passwd@vipname1'; ALLOCATE CHANNEL 2 ... PARMS='ENV=(NB_ORA_CLIENT=vipname2)' CONNECT='sys/passwd@vipname2'; ALLOCATE CHANNEL 3 ... PARMS='ENV=(NB_ORA_CLIENT=vipname1)' CONNECT='sys/passwd@vipname1'; ALLOCATE CHANNEL 4 ... PARMS='ENV=(NB_ORA_CLIENT=vipname2)' CONNECT='sys/passwd@vipname2';
注意:
如果其中的一个或多个节点已关闭,则这些分配操作将失败,从而导致备份失败。
或者,将 Oracle 配置为将特定通道绑定到特定主机。
CONFIGURE CHANNEL 1 DEVICE TYPE 'SBT_TAPE' CONNECT 'sys/passwd@vipname1' PARMS "ENV=(NB_ORA_CLIENT=vipname1)"; CONFIGURE CHANNEL 2 DEVICE TYPE 'SBT_TAPE' CONNECT 'sys/passwd@vipname2' PARMS "ENV=(NB_ORA_CLIENT=vipname2)"; CONFIGURE CHANNEL 3 DEVICE TYPE 'SBT_TAPE' CONNECT 'sys/passwd@vipname1' PARMS "ENV=(NB_ORA_CLIENT=vipname1)"; CONFIGURE CHANNEL 4 DEVICE TYPE 'SBT_TAPE' CONNECT 'sys/passwd@vipname2' PARMS "ENV=(NB_ORA_CLIENT=vipname2)";
或者,默认情况下,备份会使用客户端名称,这些名称对于每台主机都应不同且通常是物理主机名。
将 NetBackup 主服务器配置为允许对所有的备份映像进行物理主机名访问。
cd /usr/opnv/netbackup/db/altnames echo "hostname1" >> hostname1 echo "vipname1" >> hostname1 echo "hostname2" >> hostname1 echo "vipname2" >> hostname1 cp hostname1 hostname2
您可以使用“首选网络”或其他方式,强制 NetBackup 使用与用户控制的出站请求的 VIP 名称关联的 IP 地址。 如果使用此方法,则必须允许 VIP 名称有权访问所有的备份映像。
cd /usr/openv/netbackup/db/altnames cp hostname1 vipname1 cp hostname1 vipname2
结果就是备份脚本将在所有当前活动的主机上运行,但只在一个主机上启动 RMAN。RMAN 将在所有主机上分配通道以达到负载平衡。用户控制的备份请求包括特定于请求方主机且与策略匹配的 NB_ORA_CLIENT 或 CLIENT_NAME。用于数据传输的逆向连接和备份映像存储在该名称下。
任何一个客户端都可以启动还原。必须使用 AUTOLOCATE ON; 配置 RMAN,以便从执行备份的相应实例主机请求备份集片。或者,如果将每个还原请求都配置为包括正确的客户端名称,则可以从任一主机或实例进行还原。 此名称是将备份片传输到存储时使用的客户端名称。
SEND 'NB_ORA_CLIENT=client_name_used_by_backup';