Direct NFS Client in 11G

This article presents new feature 11g Direct NFS Client.

Oracle database kernel implements NFS version 3 client protocol. It means Oracle rdbms is not using anymore OS NFS drivers to communicate with NFS V3 NAS devices but own implementation. This results in consistent performance for many platforms and easy setup. It eliminates scenario where data is cached on OS level and in SGA. Oracle Direct NFS client is using asynchronous I/O and supports up to 4 parallel network paths (no need for bonded expensive network interfaces).

This presentation is based on following article:

Install Oracle 11.2.0.3 on OEL6

Configuration steps

Mount NFS file systems using OS kernel NFS client as user root. Later Oracle Direct NFS Client will take control over communication.

mkdir /nfs_server_data
chown oracle:oinstall /nfs_server_data

add to /etc/exports

/nfs_server_data *(rw,sync,no_wdelay,insecure_locks,no_root_squash)

start nfs server

chkconfig nfs on
service nfs restart

create directory to mount /nfs_server_data

mkdir /ora01/nfs_client
chown oracle:oinstall /ora01/nfs_client

add entry to /etc/fstab file to mount /nfs_server_data on /ora01/nfs_client

oel6.dbaora.com:/nfs_server_data /ora01/nfs_client nfs rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0

mount NFS data

mount /ora01/nfs_client

verify NFS mount

[root@oel6 ~]# df /ora01/nfs_client
Filesystem           1K-blocks      Used Available Use% Mounted on
oel6.dbaora.com:/nfs_server_data
                 61419424  36088864  22210624  62% /ora01/nfs_client

Enable ODM library as user oracle

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk dnfs_on

We can now create new tablespace on NFS

 SQL> create tablespace tblsp_nfs
  2  datafile '/ora01/nfs_client/tblsp_nfs01.dbf' size 100m;

Tablespace created.

Following views show usage of NFS

  • V$DNFS_SERVERS – information about the Direct NFS servers accessed by Direct NFS
  • V$DNFS_FILES – information about the Oracle process files open through Direct NFS.
  • V$DNFS_CHANNELS – information about the Oracle process connections (channels) open to NFS servers.
  • V$DNFS_STATS – information about the Oracle process NFS operation statistics issued by Direct NFS.
SQL> select svrname, dirname from v$dnfs_servers;

SVRNAME
-----------------------------------------------------
DIRNAME
-----------------------------------------------------
oel6.dbaora.com
/nfs_server_data

Hope this helps 🙂

Tomasz

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.