ORA-27054 ERRORS WHEN RUNNING RMAN WITH NFS IN 11.2

Description

During creation of GI and VDB with database 11.2.0.4 we encountered that our default NFS options may fail RMAN to write to NFS.

 

GI creation , in order to overcome the issue, we added to our nfs options “actimeo=0”

“-t nfs -o rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,vers=3,timeo=600,nolock,actimeo=0”

In oracle version 11.2.0.4, rman checks if the option is specified, then continues to write, if not , it rases

ORA-27054: NFS file system where the file is created or resides is not mounted with correct options

The error can be seen in alert log

WARNING:Expected NFS mount options: rsize>=32768,wsize>=32768,noac

option “noac” is equivalent to “actimeo=0”

 

Note:

Those options turn off NFS filesystem caching, hence making significant impact on performance.

In versions 12.1 and higher, oracle relaxed the rman checks of nfs parameters.

 

On VDB side, rman was failing to restore controlfile as its restore requires “noac” parameter to be in place as per oracle docs.

RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of restore command at 05/20/2016 12:58:33 RMAN-06172: no AUTOBACKUP found or specified handle is not a valid copy or piece

We implemented workaround which disables rman check of nfs mount options:

In spfile of VDB set event=”10298 trace name context forever, level 32”

 

See below oracle doc for more information:

Bug 9244583 ORA-27054 ERRORS WHEN RUNNING RMAN WITH NFS IN 11.2
There are multiple entries in /etc/mnttab for the mount point in question and we use the auto-mount entry and since this entry fails the option checks we raise the ORA-27054 error and never encounter the "real" entry for the file system mount.
Solution 3 :-
1.- Apply the patch to fix bug 9244583, the patch can be downloaded from MOS.
or
2.- Use the workaround:
Set the following event in the init.ora parameter file:
event="10298 trace name context forever, level 32" in the init.ora/spfile and restart the instance.
If using spfile define the event from sqlplus
SQL> alter system set event='10298 trace name context forever, level 32' scope=spfile;