第二章 参数及参数文件
数据库创建过程中pfile与spfile的交接:
当使用DBCA自定义(不使用模版)创建数据库时,可以生成数据库创建脚本。这里面存在一个init.ora文件,这个文件是根据用户创建数据库之前定义的参数自动生成的,该参数文件被用来在创建过程中启动数据库。通过CreateDB.sql可以看到这个引用。在数据库创建完成之后,Oracle调用postDBCreation.sql脚本来进行一系列的后续处理,最后Oracle通过init.ora文件创建了spfile文件。新创建的spfile在下一次启动数据库时生效。
V$spparameter视图用来记录spfile的参数设置信息。
在运行期间Oracle并不锁定spfile,所以spfile可能意外丢失。
非缺省目录下的spfile如何调用:
可以创建一个包含spfile参数的pfile文件,指向spfile。Spfile参数用于定义非缺省路径的spfile文件。
Alter system set …….scope=memory/spfile/both
RAC环境中参数的修改:
如果不指定SID名称,或者指定为“*”,那么修改缺省的对所有实例生效。
alter system set open_cursors=500 sid='*' scope=memory; ----仅在RAC下才有效
select sid,name,value from v$spparameter where name='open_cursors';
alter system set open_cursors=150 scope=spfile sid='RACDB1'; -----修改RAC下某一个实例的参数
当在Oracle 10g中设置了SGA_TARGET参数启动了自动SGA调整之后,Oracle会同时启动一系列的新的隐含参数来控制SGA各组件的大小。可以从alert log中注意到每次启动这些参数的设置通常都是不同的(Oracle自动调整的结果)。
重置spfile中设置的参数:
Alter system reset parameter_name sid=’sid|*’
该命令通常用于RAC环境中,在单实例环境中需要指定sid=’*’,reset一个参数,Oracle将从spfile文件中去除该参数。
Oracle把spfile纳入到RMAN的备份恢复策略当中,如果配置了控制文件自动备份,那么Oracle会在数据库发生重大变化(如增减表空间)时自动进行控制文件及spfile文件的备份。
select * from v$rman_configuration; ----RMAN设置信息
自动备份的控制文件及spfile文件缺省的格式和命名规则:
c-IIIIIIIIII-YYYYMMDD-QQ
c--控制文件 IIIIIIIIII—DBID YYYYMMDD—时间戳 QQ—序号00~FF,十六进制表示
RMAN>restore spfile to ‘/tmp/spfileorcl.ora’ from autobackup; --使用自动备份恢复spfile
RMAN>restore controlfile to ‘/tmp/control01.ctl’ from autobackup; --使用自动备份恢复controlfile
注意:如果数据库无法mount,就不能使用上述方式恢复自动备份的控制文件或参数文件。此时,Oracle需要提供数据库的DBID才能找到相应的自动备份用以恢复。如果无法得知DBID,可以直接指定备份集来进行恢复。
RMAN>restore controlfile to ‘/tmp/control01.ctl’ from ‘c-332213………’;
如果数据库无法nomount,那么通过上面语句恢复spfile会报错。此时,可以手工临时编辑一个pfile文件启动实例,即可进行spfile恢复。也可使用RMAN启动默认实例(DUMMY),进行spfile文件恢复。
如何设置Events事件:
SQL> alter system set event='10841 trace name context forever' scope=spfile;
系统已更改。
10841事件是用来解决Oracle 9i中JDBC Thin Driver问题的一个方法。
SQL> alter system reset event scope=spfile sid='*';
系统已更改。
注意:在Oracle 10g之前,LOG_ARCHIVE_START控制数据库可否自动归档,如果在修改数据库的归档模式时忘记修改该参数,结果导致数据库重新启动后无法自动归档,最后挂起,影响服务。从Oracle10g开始,修改数据库的归档模式不需要再设置LOG_ARCHIVE_START参数。
警告日志文件中主要记录:
内部错误(ORA-600、ORA-07445等错误信息)和块损坏错误(ORA-1578);
影响数据库结构和参数的操作和诸如create database、startup、shutdown、archivelog和recover之类的语句;
例程启动时所有的非缺省初始化参数。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15203236/viewspace-592126/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/15203236/viewspace-592126/