DDBEA 到 RMAN 代理迁移指南

Summary: 以下知识库文章提供了从 Oracle 备份从 DDBEA 迁移到 RMAN 代理时的指导准则。 从版本 19.13 开始,数据库应用程序代理不再支持 Oracle RMAN 备份。建议客户使用 Oracle RMAN 代理进行所有未来的备份。数据库应用程序代理可以继续用于恢复。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

主要主题
  • 安装 RMAN 代理
  • DDboost 存储单元注意事项
  • 将 RMAN 备份/恢复脚本迁移到 RMAN 代理脚本
  • 保留注意事项
  • 恢复注意事项
  • 交叉检查和删除
  • 管理 DDBEA 备份
安装 RMAN 代理
根据 RMAN 代理文档安装 RMAN 代理。

以下视频可用作示例。

如果正在使用 Protectpoint 或 Storage Direct(Oracle 代理)工作流,请勿迁移到 RMAN 代理产品。Protectpoint 或 Storage Direct 工作流在 RMAN 代理中不可用。除非目标是迁移到常规 RMAN oracle 备份。
 
如何识别是否使用了代理工作流。
检查 rman 脚本是否包含以下语法:
...
仅备份代理...
...

运行包括归档日志和 controlfile 在内的完整 RMAN 代理备份,以完全迁移到 RMAN 代理。

DDboost 存储单元注意事项
 
  • 建议为 RMAN 代理使用新的 Boost 存储单元。
  • RMAN 代理存储单元应该已启用或未启用 Oracle 应用程序优化,具体取决于 DDBEA 存储单元上的设置。如果 DDBEA 已启用它,则 RMAN 代理也应启用它。这可确保重复数据消除在将一个产品过渡到另一个产品时保持一致,并且 Data Domain 上的空间使用量不会增加。
  • 如果 Data Domain 空间使用率不是问题,建议在 RMAN Agent Boost 存储单元中启用该功能,因为它可确保尽可能最好的重复数据消除率。空间使用量的增加小于数据库的实际大小。

如何设置和检查 Oracle 应用程序优化
设置 Oracle 应用程序优化
mtree option set app-optimized-compression oracle1 mtree /data/col1/orcl-16k-x4-mre-07-sip1-1dfae

检查 Oracle 应用程序优化是否已启用。
 
mtree option show mtree /data/col1/orcl-16k-x4-m-re-07-sip1-1dfae
Name                                                          Option                                   Value
-----------------------------------------                  -------------------------                -------
/data/col1/orcl-16k-x4-m-re-07-sip1-1dfae app-optimized-compression oracle1

oracle1 的值表示启用了 Oracle 应用程序优化。

将 RMAN 备份/恢复脚本迁移到 RMAN 代理脚本。
 
RMAN 脚本可以从 DDBEA 迁移到 RMAN 代理。这是通过更改分配渠道语句来使用 RMAN 代理库和本产品所需的环境来实现的。

例子:
DDBEA
…
ALLOCATE CHANNEL C1 DEVICE TYPE SBT_TAPE PARMS 'BLKSIZE=1048576, SBT_LIBRARY=/opt/dpsapps/dbappagent/lib/lib64/libddboostora.so, SBT_PARMS=(CONFIG_FILE=/opt/dpsapps/dbappagent/config/oracle_backup.cfg)' FORMAT '%d_%U’;
…

RMAN AGENT
…
 ALLOCATE CHANNEL CH1 TYPE 'SBT_TAPE' TRACE 5 PARMS 'BLKSIZE=1048576, SBT_LIBRARY=/home/oracle/opt/dpsapps/rmanagent/lib/libddobk.so, ENV=(STORAGE_UNIT=oracle, BACKUP_HOST=10.10.10.xxx, RMAN_AGENT_HOME=/home/oracle/opt/dpsapps/rmanagent)’;

如果在 rman 配置中自动配置通道,则必须执行相同的更改。
Rman 命令“show all;”显示是否使用了自动通道。


保留注意事项
RMAN 代理和 DDBEA 依赖于 Oracle RMAN 保留策略,因此除了正确分配维护通道以运行 rman delete 过时/crosscheck 命令之外,此区域无需进行任何更改。

DDBEA 使用 ddbmadmin 列出和删除 RMAN 工作流之外的备份。RMAN 代理中的等效命令是 ddutil。如果通过运行 ddbmadmin 而不是 Oracle RMAN 保留策略在 DDBEA 中强制实施了保留,请查看有关如何使用 ddutil 的文档。
 

恢复注意事项
使用 RMAN 代理执行的恢复通过分配通道来完成,这在“将 RMAN 备份/恢复脚本迁移到 RMAN 代理”部分中进行了说明。
安装 RMAN 代理后,建议执行完整备份,包括控制文件和归档日志。
如果未完成完整备份,则恢复可能需要使用 DDBEA 创建的备份的一部分。必须使用 RMAN 代理创建另一部分。在这种情况下,解决方案是为两种解决方案分配渠道。

例子
run {
…
ALLOCATE CHANNEL CH0 DEVICE TYPE SBT_TAPE PARMS 'BLKSIZE=1048576, SBT_LIBRARY=/opt/dpsapps/dbappagent/lib/lib64/libddboostora.so, SBT_PARMS=(CONFIG_FILE=/opt/dpsapps/dbappagent/config/oracle_backup.cfg)' FORMAT '%d_%U’;

ALLOCATE CHANNEL CH1 TYPE 'SBT_TAPE' TRACE 5 PARMS 'SBT_LIBRARY=/home/oracle/opt/dpsapps/rmanagent/lib/libddobk.so, ENV=(STORAGE_UNIT=oracle, BACKUP_HOST=10.10.10.xxx, RMAN_AGENT_HOME=/home/oracle/opt/dpsapps/rmanagent)’;
…
}

运行包括归档日志和 controlfile 在内的完整 RMAN 代理备份,以完全迁移到 RMAN 代理。
交叉检查和删除。
 
交叉检查和删除会影响对 Data Domain 的操作。建议为 DDBEA 和 RMAN 代理备份单独运行这些操作。
  • 对于 DDBEA 使用: 在之前完成交叉检查备份
  • 对于 RMAN 代理使用: 在后完成交叉检查备份

如果需要一次性交叉检查所有备份,请在同一 rman 脚本中为两个产品分配维护通道。
仅应在 DDBEA 备份仍处于保留期的时间段内执行此操作。

例子
run {
…
ALLOCATE CHANNEL CH0 DEVICE TYPE SBT_TAPE PARMS 'BLKSIZE=1048576, SBT_LIBRARY=/opt/dpsapps/dbappagent/lib/lib64/libddboostora.so, SBT_PARMS=(CONFIG_FILE=/opt/dpsapps/dbappagent/config/oracle_backup.cfg)' FORMAT '%d_%U’;

ALLOCATE CHANNEL CH1 TYPE 'SBT_TAPE' TRACE 5 PARMS 'SBT_LIBRARY=/home/oracle/opt/dpsapps/rmanagent/lib/libddobk.so, ENV=(STORAGE_UNIT=oracle, BACKUP_HOST=10.10.10.xxx, RMAN_AGENT_HOME=/home/oracle/opt/dpsapps/rmanagent)’;
…
}

提醒:
如果交叉检查是 rman 备份脚本的一部分,则建议(非强制)使用语法:“crosscheck backup completed after ”,因为这不会标记为过期以前的 DDBEA 备份。
如果 DDBEA 备份不再相关,则仅分配 RMAN 代理通道。

情况说明
客户在 2023
年 4 月 4 日安装了 RMAN Agent 用于对 RMAN 代理执行交叉检查的 rman 脚本看起来是
run {

ALLOCATE CHANNEL CH1 TYPE 'SBT_TAPE' TRACE 5 PARMS 'SBT_LIBRARY=/home/oracle/opt/dpsapps/rmanagent/lib/libddobk.so, ENV=(STORAGE_UNIT=oracle, BACKUP_HOST=10.10.10.xxx, RMAN_AGENT_HOME=/home/oracle/opt/dpsapps/rmanagent)’;
…
backup database ..
...
crosscheck backup completed after ’04-APR-23’;
}

DDBEA 的 RMAN 脚本是这样的。
 
run {
ALLOCATE CHANNEL CH0 DEVICE TYPE SBT_TAPE PARMS 'BLKSIZE=1048576, SBT_LIBRARY=/opt/dpsapps/dbappagent/lib/lib64/libddboostora.so, SBT_PARMS=(CONFIG_FILE=/opt/dpsapps/dbappagent/config/oracle_backup.cfg)' FORMAT '%d_%U’;
crosscheck backup completed before ’04-APR-23’;
}

RMAN 使用 NLS_DATE_FORMAT 参数中指定的日期格式,在上一个示例中为 DD-MON-YY
管理 DDBEA 备份
 
  • 如何查找客户端为特定 DDboost 存储单元执行的 DDBEA 备份
显示给定设备路径的所有客户端。
ddbmadmin -i -z [-D 9]

示例
/opt/dpsapps/dbappagent/bin/ddbmadmin -i -n oracle -z /opt/dpsapps/dbappagent/config/oracle_backup.cfg

设备路径 的客户端列表 /rman
client = testdb_client
...
Client = oracle.test.lab

注意:如果多个 Boost 存储单元用于 DDBEA 备份,则必须使用已配置这些提升单元的配置文件运行此命令。
 
  • 如何检查特定客户
    端是否仍有 DDBEA 备份 按保存时间范围显示存储集的信息。
/opt/dpsapps/dbappagent/bin/ddbmadmin -s [-t] [-b ] -e  -n oracle -z  [-D 9]


示例
./ddbmadmin -s -n oracle  -e tomorrow -z /opt/dpsapps/dbappagent/config/oracle_backup.cfg
Client = oracle.test.lab, date and time = 03/17/2023 08:39:06 AM (1679056746), size = 3132120592, name = RMAN:ORCL21C_m91n8m50_3785_1_1, Data Domain retention = not set.
Client = oracle.test.lab, date and time = 03/17/2023 08:39:41 AM (1679056781), size = 663753856, name = RMAN:ORCL21C_ma1n8m6d_3786_1_1, Data Domain retention = not set.
Client = oracle.test.lab, date and time = 03/17/2023 08:39:48 AM (1679056788), size = 520097848, name = RMAN:ORCL21C_mb1n8m6k_3787_1_1, Data Domain retention = not set.

  提醒:此命令显示在 config_file 中指定的客户端的信息。如果未指定客户端,则会显示从中运行此命令的主机名的备份。
可能需要从执行 DDBEA 备份的不同客户端运行此命令。

如果不再需要备份,如何从 DDBEA 中删除备份。

删除保存时间范围内的存储集。
ddbmadmin -d [-t] [-c] [-b ] -e  -n  -z  [-D 9] [-c]

示例:
/opt/dpsapps/dbappagent/bin/ddbmadmin -d -n oracle  -e tomorrow -z /opt/dpsapps/dbappagent/config/oracle_backup.cfg


指定的结束时间晚于当前时间。
存储集信息:        
Client = oracle.test.lab, date and time = 03/17/2023 08:39:06 AM (1679056746), size = 3132120592, name = RMAN:ORCL21C_m91n8m50_3785_1_1, Data Domain retention = not set.
Client = oracle.test.lab, date and time = 03/17/2023 08:39:41 AM (1679056781), size = 663753856, name = RMAN:ORCL21C_ma1n8m6d_3786_1_1, Data Domain retention = not set.
Client = oracle.test.lab, date and time = 03/17/2023 08:39:48 AM (1679056788), size = 520097848, name = RMAN:ORCL21C_mb1n8m6k_3787_1_1, Data Domain retention = not set.
Client = oracle.test.lab, date and time = 03/17/2023 08:39:51 AM (1679056791), size = 19923276, name = RMAN:c-2323869396-20230317-00, Data Domain retention = not set.

提醒:此命令将删除在 config_file 中指定的客户端的备份 如果未指定客户端,则会删除从中运行此命令的主机名的备份。
可能需要从使用配置文件执行 DDBEA 备份的不同客户端运行此命令。
Article Properties
Article Number: 000211408
Article Type: How To
Last Modified: 29 May 2023
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.