Heim >Datenbank >MySQL-Tutorial >Oracle数据备份过程中遇BUG_ORA-27054 NFS file system

Oracle数据备份过程中遇BUG_ORA-27054 NFS file system

WBOY
WBOYOriginal
2016-06-07 17:17:171189Durchsuche

【Oracle故障】ORA-27054 NFS file system where the file is created or resides is not mounted with correct options在数据备

【Oracle故障】ORA-27054 NFS file system where the file is created or resides is not mounted with correct options
 
在数据备份过程中,由于目标是使用NFS文件系统,因此在导入的时候遇到了BUG,报错如下:
 
ORA-39001: invalid argument value
ORA-39000: bad dump file specification
ORA-31641: unable to create dump file "/exp/bak/expdp_01.dmp"
ORA-27054: NFS file system where the file is created or resides is not mounted with correct options
Additional information: 6
 
通过查询metalink id :387700.1
 
文档上说可能的问题有以下几种:
a) The mount table (eg; /etc/mnttab) can be read to check the mount options
b) The NFS mount is mounted with the "hard" option
c) The mount options include rsize>=32768 and wsize>=32768
d) For RAC environments, where NFS disks are supported, the "noac" mount option is used.
 
文档上指出通过设置event 10298事件可以避免,不过设置event 10298需要重启数据库生效,目前为生产环境,这方法不能用。
 
通过调整上述的参数,hard,rsize,wsize都不能解决。
 
最后检查NFS的配置,,发现客户端的/etc/filesystems中未加入mount nfs文件系统的条目
 
增加以下条目后,重新mount,解决。
 
#vi /etc/filesystems
/exp:
        dev             = /exp
        vfs             = nfs
        nodename        = 192.168.1.20
        mount           = true
        options         = rw,bg,hard,intr,proto=tcp,vers=3,rsize=65536,wsize=65536,timeo=600
        account         = false
 
#umount /oraexp
#mount /oraexp
 
建议大家以后遇到类似问题,先检查/etc/filesystems文件,这个问题都是由于大家都喜欢使用以下方式mount nfs导致。
 
mount -o rw,bg,hard,intr,proto=tcp,vers=3,rsize=65536,wsize=65536,timeo=600 192.168.1.20:/exp /exp
 
//相关metalink 文档如下:
 
ORA-19504 ORA-27054 Errors mounting NFS file system [ID 370513.1]
RMAN Backup Fails With RMAN-03009 ORA-19504 ORA-27054 NFS file system where the file is created or resides is not mounted with correct options [ID 1472448.1]
ORA-27054: NFS file system where the file is created or resides is not mounted with correct options [ID 781349.1]
 
//另外设置10298的过程如下:
 
1) set the Event 10298 in the init file
event="10298 trace name context forever, level 32"
if you are using the spfile then the following can be done
 
SQL> alter system set event='10298 trace name context forever, level 32'scope= spfile ;
 
Once you set the above parameter restart the instance check as follows
 
SQL> select name, value from v$parameter where name = 'event';
 
NAME VALUE
---------- ------------------------------------------------------------
Event 10298 trace name context forever, level 32
 
1 row selected.

更多Oracle相关信息见Oracle 专题页面 ?tid=12

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn