RAC环境下的spfile存放位置

我们知道,oracle的参数文件分为pfile、spfile,默认位于$ORACLE_HOME/dbs目录下。
我们可以使用show parameter spfile或pfile 查看oaracle是使用pfile还是spfile启动的!!

oracle 9i以后,oracle启动时默认是以spfile启动的,如果不存在spfile,将使用$ORACLE_HOME/dbs目录下的pfile文件。

但是,rac环境下系统安装后在$ORACLE_HOME/dbs目录下是不存在spfile文件的,只有一个initsid.ora文件,这个文件只有一行内容:

[@more@]

spfile='/dev/vg01/rlvol24'(笔者使用的是裸设备)。使用crsctl启动rac后,show parameter spfile显示是以spfile启动的。有人可能会以为rac启动时是使用pfile,然后从pfile里的指针找到spfile的。其实不然,经过测试发现:即使把$ORACLE_HOME/dbs目录下的pfile、spfile都改名(或删除)掉,使用crsctl命令,rac仍然以spfile正常启动。使用ocrdump或dd将ocr的内容dump出来后就会发现秘密了,原来ocr里有一个spfile的位置指针。我们使用crsctl命令或者srvctl启动rac时,crsctl、srvctl是以root身份执行的,它是不会访问$ORACLE_HOME/dbs目录的(root的配置文件里根本就没有相关的环境变量),是从ocr中获取spfile的位置。

如果我们在rac正常启动后,使用sqlplus shutdown数据库,不关闭集群,然后再使用startup启动数据库,这个时候oracle会使用$ORACLE_HOME/dbs目录下的pfile或spfile文件!因为sqlplus命令是以oracle用户执行的,oracle用户有$ORACLE_HOME的环境变量。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/670493/viewspace-1024889/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/670493/viewspace-1024889/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值