Oracle Direct NFS (dNFS)

Oracle Direct NFS (dNFS) is an optimized NFS client that provides faster and more scalable access to NFS storage in NAS storage devices.

Direct NFS is provided as part of the database kernel, so it can be used on all supported database platforms. It bypasses the NFS driver of the operating system and provides faster performance than the NFS driver of the operating system because it meets all the requests itself it needs.

Enable Direct NFS

You can enable dNFS with the following commands.

With 11g R2, you can also enable as follows.

Disable Direct NFS

You can disable dNFS with the following commands.

Direct NFS uses a configuration file named oranfstab to determine which mount directories are available. This file can be in the/etc or $ORACLE_HOME/dbs directories. If this file is not present, it looks for mount directories in the /etc/mtab file.

oranstab:

server-> an optional name (usually the name of the nfs server)
local-> The interface ip where the client reaches the nfs server
path-> The interface ip of the nfs server
export-> share path on nfs server
mount -> client’s local path

If the path is more than one as above, it will load balancing. If there are more than one interfaces that the NFS server provides , then this is the case . Up to 4 paths can be entered.

After your directory has been mounted, your database must be rebooted to use Direct NFS if your database has a pre-12c version. 12c databases use dNFS by default. When you see the following lines in the alert log file when you restart, it means the database is using dNFS.

You can use the following query to see the active usage.

The views that can be used for Direct NFS are as follows.

v$dnfs_servers Displays the servers that access using Direct NFS.
v$dnfs_channels Displays information about Oracle process connections that are opened to NFS servers.
v$dnfs_files Displays files that are currently in use with Direct NFS.
v$dnfs_stats Displays information with direct NFS performance statistics.

To mount the corresponding nfs share, create a directory to mount and add a line in the / etc / fstab file. And mount it with the mount command.

Mount options vary according to operating systems. You can find out what options should be used on your operating system in the following table. It is recommended to use 1048576 for rsize and wsize values in the table.

Operating System Mount options for Binaries Mount options for Oracle Datafiles Mount options for CRS Voting Disk and OCR (12.1 and lower)
Sun Solaris * rw,bg,hard,nointr,rsize=32768,
wsize=32768,proto=tcp,noac,vers=3,suid
rw,bg,hard,nointr,rsize=32768,
wsize=32768,proto=tcp,noac,
forcedirectio, vers=3
rw,bg,hard,nointr,rsize=32768,
wsize=32768,proto=tcp,vers=3,
noac,forcedirectio
AIX (5L) ** rw,bg,hard,nointr,rsize=32768,
wsize=32768,proto=tcp,vers=3,timeo=600
cio,rw,bg,hard,nointr,rsize=32768,
wsize=32768,proto=tcp,noac,
vers=3,timeo=600
cio,rw,bg,hard,intr,rsize=32768,
wsize=32768,tcp,noac,
vers=3,timeo=600
HPUX 11.23 ***  — rw,bg,vers=3,proto=tcp,noac,
hard,nointr,timeo=600,
rsize=32768,wsize=32768,suid
rw,bg,vers=3,proto=tcp,noac,
forcedirectio,hard,nointr,timeo=600,
rsize=32768,wsize=32768
rw,bg,vers=3,proto=tcp,noac,
forcedirectio,hard,nointr,timeo=600
,rsize=32768,wsize=32768
Windows
(Use dNFS if needed.
Refer to
Document 1468114.1
Not Supported Not Supported Not Supported
Linux x86
#
****
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp, vers=3,
timeo=600, actimeo=0
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,actimeo=0,
vers=3,timeo=600
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,noac,actimeo=0,
vers=3,timeo=600
Linux x86-64 #
****
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,vers=3,
timeo=600, actimeo=0
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,actimeo=0,
vers=3,timeo=600
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,noac,vers=3,
timeo=600,actimeo=0
Linux – Itanium rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,vers=3,
timeo=600, actimeo=0
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,actimeo=0,
vers=3,timeo=600
rw,bg,hard,nointr,rsize=32768,
wsize=32768,tcp,noac,vers=3,
timeo=600,actimeo=0

dbtut
Author: dbtut

We are a team with over 10 years of database management and BI experience. Our Expertises: Oracle, SQL Server, PostgreSQL, MySQL, MongoDB, Elasticsearch, Kibana, Grafana.

Leave a Reply

Your email address will not be published. Required fields are marked *