Oracle RAC RMAN 备份未写入 NFS 共享

Posted

技术标签:

【中文标题】Oracle RAC RMAN 备份未写入 NFS 共享【英文标题】:Oracle RAC RMAN Backup not writing to NFS Share 【发布时间】:2020-12-08 19:09:40 【问题描述】:
run 
    SET nocfau;
    
    ALLOCATE CHANNEL CH0 DEVICE TYPE DISK FORMAT '/nfs/datafile/%U_%T';
    ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT '/nfs/datafile/%U_%T';
    ALLOCATE CHANNEL CH2 DEVICE TYPE DISK FORMAT '/nfs/datafile/%U_%T';
    ALLOCATE CHANNEL CH3 DEVICE TYPE DISK FORMAT '/nfs/datafile/%U_%T';
    
    BACKUP AS COPY INCREMENTAL LEVEL 0 TAG 'INCR_MERGE' DATABASE;
    BACKUP ARCHIVELOG ALL FORMAT '/nfs/archivelogs/%U' NOT BACKED UP 1 TIMES;
    
    RELEASE CHANNEL CH0;
    RELEASE CHANNEL CH1;
    RELEASE CHANNEL CH2;
    RELEASE CHANNEL CH3;

以上是为Oracle RAC 运行备份的rman script。我有安装了以下选项的 NFS 共享:rw,user,hard,noac,vers=4

NFS 服务器有以下导出:NFSv4,rw,no_root_squash,no_all_squash,secure

问题是没有任何内容写入 NFS 共享。我可以创建文件、复制大文件,但是当 RMAN 运行时,没有任何内容被复制到 NFS 共享中。 RMAN 进程一直运行直到它被终止。

当我执行 nfsiostat -a 时,它会显示 5 个强制性 GETATTR 请求。 这是否意味着 Oracle 数据文件没有被写入 NFS 共享,因为文件属性以及文件 uid/gid 没有被成功检索?

更新:尝试在 Oracle 19c RAC 设置上运行备份 得到以下 RMAN 错误

RMAN-03009: failure of backup command on CH0 channel at 08/24/2020 16:59:11
ORA-19504: failed to create file "/home/oracle/nfs/ractest/1178998226/full/datafile/data_D-ORAMS19C_I-1178998226_TS-SYSAUX_FNO-3_rhv8m5mt_20200824"
ORA-17503: ksfdopn:11 Failed to open file /home/oracle/nfs/ractest/1178998226/full/datafile/data_D-ORAMS19C_I-1178998226_TS-SYSAUX_FNO-3_rhv8m5mt_20200824
ORA-17500: ODM err: No such file or directory

我在本地磁盘上运行了 rman 备份,他们成功了,并且数据文件的组为 asmadmin。 NFS 共享上的备份是否因为数据文件属性/组信息未复制到 NFS 共享而失败? oracle 用户不属于 asmadmin 组。

【问题讨论】:

你遇到了什么错误?您是否尝试过使用 DEBUG TRACE 选项跟踪 RMAN? @SayanMalakshinov ORA-06515, ORA-19583 但发生这种情况是因为我按了 ctrl-c。除此之外,我没有看到任何错误。 【参考方案1】:

您的 NFS 选项对于 RMAN 是错误的。对于 Oracle RAC,它们应如下所示:

rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,vers=3,timeo=600

根据 Oracle 文档,这些选项是必需的。此外,“noac”选项的使用对于 RMAN 来说是一个特别的问题,不应使用。

【讨论】:

我正在运行备份到 NFS,不使用 NFS 作为数据库数据文件的存储并运行 RAC 集群。我还应该使用相同的设置吗?奇怪的是其他 RAC 机器的备份没有问题。 是的,相同的设置适用于 RMAN 备份目标。【参考方案2】:

这似乎是 Oracle 12.1 的问题,按照 oracle 支持文档并应用提供的补丁 (20720667) 已解决该问题。这是link

【讨论】:

以上是关于Oracle RAC RMAN 备份未写入 NFS 共享的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 11g R2 RAC数据库备份通过RMAN恢复到单实例数据库实现

RAC 之 RMAN 备份

oracle 11.2.0.3 rac集群rman周备份策略

Oracle 11g R2 rac通过rman 恢复到单实例数据库

ORACLE rman备份报错之RMAN-03009&ORA-19587&ORA-27072

RAC_RMAN冷备份