Oracle Direct NFS (dNFS) is an optimized NFS (Network File System) client that provides faster and more scalable access to NFS storage located on NAS storage devices (accessible over TCP/IP). Direct NFS is built directly into the database kernel - just like ASM which is mainly used when using DAS or SAN storage.
A good guideline is to use Direct NFS when implementing NAS storage and ASM when implementing SAN storage.
Direct NFS provides faster performance than what can be provided by the operating system's NFS driver as Oracle bypasses the operating system and generates exactly the requests it needs (no user configuration or tuning required). Data is cached just once in user space, which saves memory (no second copy in kernel space). Performance is further improved by load balancing across multiple network interfaces (if available).
Direct NFS is a new feature introduced with Oracle 11g.
Direct NFS is provided as part of the database kernel, and is thus available on all supported database platforms - even those that don't support NFS natively, like Windows.
Enabling Direct NFS
Execute these commands to enable Direct NFS:
cd $ORACLE_HOME/lib mv libodm11.so libodm11.so_stub ln -s libnfsodm11.so libodm11.so
Alternative way supported from 11.2 onward:
cd $ORACLE_HOME/rdbms/lib make -f ins_rdbms.mk dnfs_on
cd $ORACLE_HOME/rdbms/lib make -f ins_rdbms.mk dnfs_off
Direct NFS uses a new configuration file (ORACLE_HOME/dbs/oranfstab) or the system's mount tab file (/etc/mtab) to find out what mount points are available.
Example oranfstab file:
server: MyNFSserver1 path: 192.168.1.1 path: 192.168.1.2 export: /vol/oradata1 mount: /mnt/oradata1