NFS SERVER 10.10.10.22
NFS CLIENT 10.10.10.12
1、nfs server需要启动的服务:
#service portmap start
Starting portmap: [ OK ]
#service nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS daemon: [ OK ]
Starting NFS mountd: [ OK ]
Starting RPC idmapd: [ OK ]
2、nfs client需要启动的服务
#service portmap start
Starting portmap: [ OK ]
3、在NFS SERVICE端配置NFS
root用户编辑文件/etc/exports内容如下:
/u01/nfs 10.10.10.12(rw,no_root_squash,insecure)
检查配置结果:
[root@db11g-em10g nfs]# exportfs
/u01/nfs 10.10.10.12
[root@db11g-em10g nfs]# exportfs -rv
exporting 10.10.10.12:/u01/nfs
4、在NFS Client端root用户挂载NFS文件系统
[root@db11g oracle]# mount 10.10.10.22:/u01/nfs /oracle/nfs
5、配置NFS CLIENT数据库支持Direct NFS
oracle用户编辑$ORACLE_HOME/dbs/oranfstab文件,内容如下
[oracle@db11g ~]$ cat $ORACLE_HOME/dbs/oranfstab
server:db11g-em10g
path:10.10.10.22
export:/u01/nfs mount:/oracle/nfs
修改libodm11.so库文件的链接对象
$cd $ORACLE_HOME/lib
$mv libodm11.so libodm11.so.bak
$ln -s libnfsodm11.so libodm11.so
数据库启动的告警日志中有如下信息:
Oracle instance running with ODM: Oracle Direct NFS ODM Library
Version 2.0
6、在NFS Client端创建表空间测试:
SQL> select * from v$dnfs_servers
ID
SVRNAME DIRNAME MNTPORT NFSPORT WTMAX RTMAX
---------- --------------- -------------------- ----------
---------- ---------- ----------
6 db11g-em10g /u01/nfs 718 2049 0 0
SQL> create tablespace dnfs datafile '/oracle/nfs/dnfs01.dbf'
size 2M;
SQL> select * from v$dnfs_files
FILENAME FILESIZE PNUM SVR_ID
---------------------------------------- ---------- ----------
----------
/oracle/nfs/dnfs01.dbf 2105344 9 5
7、检查NFS SERVER端口的链接情况:
[root@db11g-em10g nfs]# netstat -an |grep 2049
tcp 0 0
0.0.0.0:2049 0.0.0.0:* LISTEN tcp 0 0
10.10.10.22:2049 10.10.10.12:23052 ESTABLISHED
tcp 0 0
10.10.10.22:2049 10.10.10.12:728 ESTABLISHED
tcp 0 0
10.10.10.22:2049 10.10.10.12:56522 ESTABLISHED
udp 0 0
0.0.0.0:2049 0.0.0.0:*
发现的问题:
1、NFS CLient端必须要启动portmap服务,否者在client端mount nfs文件出错:
[root@db11g oracle]# mount 10.10.10.22:/u01/nfs /oracle/nfs
mount.nfs: Input/output error
[root@db11g oracle]# service portmap start
Starting portmap: [ OK ]
[root@db11g oracle]# mount 10.10.10.22:/u01/nfs /oracle/nfs
2、NFS SERVER端的配置文件/etc/exports使用默认的内容:
[root@db11g-em10g nfs]# cat /etc/exports
/u01/nfs 10.10.10.12(rw,sync,no_root_squash)
那么在Client端创建表空间时候出现如下的错误:
[oracle@db11g dbs]$ sqlplus / as sysdba
SQL*Plus: Release 11.1.0.7.0 - Production on Sat Dec 22 15:33:19
2012
Copyright (c) 1982, 2008, Oracle. All rights
reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 -
Production
With the Partitioning and Real Application Testing options
SQL> create tablespace nfsdemo datafile
'/oracle/nfs/nfsdemo01.dbf' size 2M;
create tablespace nfsdemo datafile '/oracle/nfs/nfsdemo01.dbf' size
2M
*
ERROR at line 1:
ORA-01119: error in creating database file
'/oracle/nfs/nfsdemo01.dbf'
ORA-27086: unable to lock file - already in use
Linux Error: 37: No locks available
Additional information: 10
告警日志提示如下错误:
Sat Dec 22 15:38:18 2012
ORA-1119 signalled during: create tablespace dnfs datafile
'/oracle/nfs/dnfs01.dbf' size 2M...
Sat Dec 22 15:46:52 2012
create tablespace dnfs datafile '/oracle/nfs/dnfs01.dbf' size
2M
Direct NFS: NFS3ERR 1 Not owner. path db11g-em10g mntport 718
nfsport 2049