日期:2014-05-16 浏览次数:20481 次
RAC环境下,初始化参数文件与但实例下参数文件有些异同,主要表现在初始化参数可以为多个实例公用,也可以单独设置各个实例的初始化参数。对于那些非共用的初始化参数则必须要单独设置,而共用的则可以单独设置,但一般不建议这么用。本文描述RAC 环境下参数文件(spfile)的相关管理工作。
有关RAC环境下的重要参数描述,请参考:RAC 环境下重要参数
1、参数文件的位置 SQL> show parameter instance_name NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ instance_name string ora10g1 SQL> show parameter spfile; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ spfile string +DG1/ora10g/spfileora10g.ora SQL> show parameter instance_name NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ instance_name string ora10g2 SQL> show parameter spfile NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ spfile string +DG1/ora10g/spfileora10g.ora SQL> show parameter cluster NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ cluster_database boolean TRUE cluster_database_instances integer 2 oracle@bo2dbp:~> cd /u01/oracle/admin/ora10g oracle@bo2dbp:/u01/oracle/admin/ora10g> ls adump bdump cdump dpdump hdump pfile udump oracle@bo2dbp:/u01/oracle/admin/ora10g> cd pfile oracle@bo2dbp:/u01/oracle/admin/ora10g/pfile> ls -hltr total 4.0K -rw-r----- 1 oracle oinstall 2.7K 2012-09-27 12:12 init.ora.8272012121245 oracle@bo2dbp:/u01/oracle/admin/ora10g/pfile> cd $ORACLE_HOME/dbs oracle@bo2dbp:/u01/oracle/db/dbs> ls *.ora init+ASM1.ora initdw.ora initGOBO1A_tmp.ora initGOBO4A.ora init.ora initora10g1.ora oracle@bo2dbp:/u01/oracle/db/dbs> more initora10g1.ora SPFILE='+DG1/ora10g/spfileora10g.ora' oracle@bo2dbs:/u01/oracle/db/dbs> more initora10g2.ora SPFILE='+DG1/ora10g/spfileora10g.ora' #由上面的查询可知RAC环境下的参数文件通常都存放在RAW或者ASM中,缺省路径为$ORACLE_HOME/dbs/init{ORACLE_SID}.ora #各个实例只是存放pfile文件,pfile文件的内容是指向spfile文件的位置,即告诉,兄弟,你去xx去找那个spfile吧,哈哈,,, #注,Oracle数据库启动时会先找spfile${ORACLE_SID.ora},如果对应的spfile不存在则找spfile.ora #如果spfile.ora找不到,则找相应的pfile(init{ORACLE_SID}.ora) #那,要是都找不到呢,那就是用缺省的init.ora尝试启动实例 2、参数文件的备份 参数文件备份的方式有很多种,一般情况下当启用了RMAN自动备份控制文件时,会自动备份参数文件。 其次是手工备份参数文件,这种方式通常是将spfile内容转换为pfile,说简单点,转为文本文件保存,文件名任意。 建议在修改参数文件之前先手工备份参数文件,使用命令: create pfile=['<dir>'] from spfile; 注,单实例情形下,如果使用spfile文件启动实例,可以通过上面的方式直接备份,RAC环境下这么干,那就把pfile文件给覆盖了 因此,RAC环境下建议为pfile文件指定不同的文件名。如当前为initora10g1.ora,则可以指定为initora10g1.ora.bak SQL> create pfile='/u01/oracle/db/dbs/initora10g1.ora.bak' from spfile; File created. SQL> ho ls /u01/oracle/db/dbs/*ora10g* /u01/oracle/db/dbs/hc_ora10g1.dat /u01/oracle/db/dbs/initora10g1.ora.bak /u01/oracle/db/dbs/initora10g1.ora /u01/oracle/db/dbs/orapwora10g1 SQL> ho more /u01/oracle/db/dbs/initora10g1.ora.bak ora10g2.__db_cache_size=142606336 ora10g1.__db_cache_size=163577856 ora10g1.__java_pool_size=4194304 ora10g2.__java_pool_size=4194304 ora10g1.__large_pool_size=4194304 ora10g2.__large_pool_size=4194304 ora10g2.__shared_pool_size=180355072 ora10g1.__shared_pool_size=159383552 ora10g1.__streams_pool_size=0 ora10g2.__streams_pool_size=0 *.audit_file_dest='/u01/oracle/admin/ora10g/adump' *.background_dump_dest='/u01/oracle/admin/ora10g/bdump' *.cluster_database_instances=2 *.cluster_database=true *.compatible='10.2.