Oracle Direct NFS Setup


Here is a quick setup quide for Direct NFS

Enable / Disable DNFS for your Database
Enable

mv libodm11.so libodm11.so_stub
ln -s $ORACLE_HOME/lib/libnfsodm11.so $ORACLE_HOME/lib/libodm11.so

Disable

rm $ORACLE_HOME/lib/libodm11.so
mv libodm11.so_stub libodm11.so

OS mount point should be inplace

172.16.1.140:/vol/v_nomt1_oradata1 /san/NOMT1/oradata nfs rw,bg,hard,nointr,rsize=32768,wsize=32768,tcp,vers=3,timeo=600,noauto 1 2

Create oranfstab file

$ORACLE_HOME/dbs/oranfstab
server: 172.16.1.140
path: 172.16.1.140
export: /vol/v_nomt1_oradata1 mount: /san/NOMT1/oradata

Reboot your Database instance for changes to take effect
You can consult the alert log of your database for this

Oracle instance running with ODM: Oracle Direct NFS ODM Library Version 3.0
...
ALTER DATABASE   MOUNT
Direct NFS: channel id [0] path [172.16.1.140] to filer [nomtnas1] via local [] is UP
Direct NFS: channel id [1] path [172.16.1.140] to filer [nomtnas1] via local [] is UP
Successful mount of redo thread 1, with mount id 704648104

Or check on OS level by making sure the DB Writer process is hooked to use direct NFS

[oracle@nomtdb1 NOMT1 bdump]$ ps -ef | grep dbw
oracle    7252 20009  0 20:48 pts/0    00:00:00 grep dbw
oracle   24006     1  3 19:57 ?        00:01:38 ora_dbw0_NOMT1

[oracle@nomtdb1 NOMT1 bdump]$ lsof -p 24006

oracle  24006 oracle   32u  IPv4 322388                  TCP 172.16.1.226:64553->172.16.1.140:nfs (ESTABLISHED)
oracle  24006 oracle   33u  IPv4 322389                  TCP 172.16.1.226:21549->172.16.1.140:nfs (ESTABLISHED)