RAC环境下,创建spfile导致节点间数据库参数不一致的问题 |
发布时间: 2012/9/3 17:26:38 |
初接触RAC,创建spfile的时候,需要制定位置例如: create spfile='xxxxx' from pfile ; 一般$Oracle_HOME/dbs/init$ORACLE_SID.ora 里面的内容都只是共享磁盘中spfile的信息。 例如: [Oracle@rac1 dbs]$strings initdex1.ora -
如果错误的创建了spfile 例如使用如下命令: create spfile from pfile='xxxxx' ; 如果是这个命令在rac环境下面,就会出现问题,因为spfile默认是创建在$Oracle_HOME/dbs/spfile$ORACLE_SID.ora这里的,并且oracle启动的时候会优先查找以spfile开头的文件,如果找到,www.linuxidc.com则不会再使用pfile,也就不会使新修改的内容生效,这样也会造成rac两个节点的参数内容不同,有很严重的后果。 解决办法就是。 1.在执行create spfile from pfile='xxxxx' ;命令的节点使用下面的命令 create spfile='+BACKUPS/dex/spfiledex.ora' from pfile='xxxxx'(这个包含了新内容的pfile) ; 2.然后关闭数据库 3.编辑$Oracle_HOME/dbs/init$ORACLE_SID.ora 加入如下内容 SPFILE='+BACKUPS/dex/spfiledex.ora' 4.将$Oracle_HOME/dbs/spfile$ORACLE_SID.ora这个spfile重新命名 mv$Oracle_HOME/dbs/spfile$ORACLE_SID.ora$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora.bk 5.各个节点都重启即可。
本文出自:亿恩科技【www.enkj.com】 |