由于容灾项目Goldengate实施需要,在PMS系统上需要把两个节点归档路径设置成NFS共享,首先交代一下环境:
AIX 5300-08-05-0846 + Oracle10.2.0.4 RAC
我们按照AIX的Smitty设置NFS共享后,在用rman备份归档时报如下错误:
RMAN> run
2> {
3> allocate channel c1 device type sbt;
4> allocate channel c2 device type sbt;
5> backup database plus archivelog delete all input;
6> }
分配的通道: c1通道 c1: sid=307 实例=testrac2 devtype=SBT_TAPE通道c1: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
分配的通道: c2通道 c2: sid=306 实例=testrac2 devtype=SBT_TAPE通道c2: VERITAS NetBackup for Oracle - Release 6.0 (2006110304)
启动 backup 于 29-5月 -07当前日志已存档释放的通道: c1释放的通道: c2
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: backup plus archivelog 命令 (在 05/29/2007 14:06:09 上) 失败
RMAN-06059: 没有找到预期的归档日志, 归档日志的丢失将影响可恢复性
ORA-19625: 识别文件/data1/archivelog1/1_253_618591128.dbf时出错
ORA-27054: 创建文件或文件驻留的 NFS 文件系统未使用正确的选项装载
Additional information: 2
从操作系统上可以看到这个文件已经存在:
$ ls -l /data1/archivelog1
total 1599904
-rw-rw---- 1 oracle oinstall 533180928 May 29 14:03 1_253_618591128.dbf
-rw-rw---- 1 oracle oinstall 285244928 May 29 14:05 1_254_618591128.dbf
-rw-rw---- 1 oracle oinstall 292864 May 29 14:06 1_255_618591128.dbf
从Metalink的查询看,这个错误还比较普遍。在文章Note:424785.1里面进行了比较详细的描述。
WRONG MOUNT OPTIONS AIX [ID 420582.1]
--------------------------------------------------------------------------------
修改时间 27-JUL-2010 类型 PROBLEM 状态 MODERATED
In this Document
Symptoms
Cause
Solution
References
--------------------------------------------------------------------------------
Platforms: 1-914CU;
This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.
Applies to:
Oracle Server - Enterprise Edition - Version: 10.1.0.2 to 11.1.0.7 - Release: 10.1 to 11.1
IBM AIX on POWER Systems (64-bit)
IBM AIX Based Systems (64-bit)
AIX5L Based Systems (64-bit)
***Checked for relevance on 25-Jul-2010***
Symptoms
Datapump export failed with:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - 64bit Production
With the Partitioning, OLAP and Data Mining Scoring Engine options
ORA-39001: invalid argument value
ORA-39000: bad dump file specification
ORA-31641: unable to create dump file "
/full.Wed.dmp"
ORA-27054: NFS file system where the file is created or resides is not mounted with correct options
Additional information: 6
The dumpfile directory is located on a NFS file system.
OR
Create database failed with:
CREATE DATABASE "test2"
*
ERROR at line 1:
ORA-1501: CREATE DATABASE failed
ORA-200: control file could not be created
ORA-202: control file: '
/control01.ctl'
ORA-27054: NFS file system where the file is created or resides is not mounted with correct options
Additional information: 6
Cause
This seems to be a limitation on AIX platforms. All mount point information is supposed to be present in the '/etc/filesystems' file located on the system. When mount information is not present in this file it can lead to errors.
The behavior. is described in base bug:
BUG 4719334 NFS FILE SYSTEM WHERE THE FILE IS CREATED OR RESIDES IS NOT MOUNTED ORA-27054
closed as 'OS-Vendor problem', specific for AIX platforms.
Another bug:
BUG 4968488 NEED A WAY TO AVOID FATAL ORA-27054 ERRORS FROM SKGFIFI FOR NFS FILES
Offers a possibility to workaround this.
Solution
Disallow MOUNT POINT checks with event:
"10298 trace name context forever, level 32"
Event 10298 disables the NFS checks in the 10.2 code
SOLUTION
=========
To implement the solution, please execute one the following steps:
1. Don't use NFS to create the files.
Or
2. Add the NFS filesys to '/etc/filesystems'
--> This is also applicable for 11G
Or
3. Edit init.ora, add the line:
event="10298 trace name context forever, level 32"
and bounce the database again, if it already exist so that the new parameter is active.
Then retry the failed operation
注意metalink上给出的参数并非对所有系统都适用,比如在Solaris8上就要去掉tcp参数。而去掉了tcp之后,似乎这种方法就不生效了。
剩下两种方式,打补丁需要将数据库关闭,而且一般使用NFS都是用在Rac的环境,补丁还需要在两个节点上同时打,比较麻烦。
而设置EVENT虽然简单,只是要重启系统才能生效。
设置Oracle的事件10298,并重启数据库:
后来又在metalink中找到另外一篇文档,不需要重启数据库或操作系统就能把该问题解决了[20060626]
参考文档: Oracle? Real Application Clusters 10g Release 2 with AIX 5L Version 5.3 and NetApp Storage
Note:
The “cio” mount option should not be used for ORACLE_HOME and CRS_HOME (the volume where CRS and Oracle binaries are placed).
Oracle install will fail if you dynamically mount the NFS volumes without adding entries in the /etc/filesystems file.
-o rw,bg,hard,intr,proto=tcp,vers=3,rsize=32768,wsize=32768,timeo=600
添加不需要重启:
在文件"/etc/filesystems"中添加的项目有:
/pms1:
dev = /aa
vfs = nfs
log = /tmp/nfslog
mount = true
options = rw
account = false
Note:420582.1