oracle10g
实例启动时报ORA-32004: obsolete or deprecated parameter(s) specified
实例还是正常启动了,但是几十秒后整个实例就突然关了,进程全没了
查看alert日志
找alert日志位置
find / -name alert*log
得知alert文件位置,查看它(个人喜欢用vi来看日志文件)
vi /home/oracle/oracle10g/admin/YJDB/bdump/alert_YJDB.log
看到有这样的错误,根据提示的trace文件位置查看trace日志
vi /home/oracle/oracle10g/admin/YJDB/bdump/yjdb_reco_11036.trc
注意到错误ORA-00600: internal error code, arguments: [18348]
搜索网络找到这篇文章
摘抄文章里一部分关键信息:
看起来是external_scn_rejection_threshold_hours
参数有问题,确认当前的spfile里的参数值
首先需要知道spfile文件的位置,先mount方式启动数据库(这种方式启动,实例没有自动关闭,实例open了之后才会出现此故障)
sqlplus / as sysdba
SQL>startup mount;
SQL>show parameter spfile;
得知文件位于/home/oracle/oracle10g/product/10.2.0/db_1/dbs/spfileYJDB.ora
查看里面的参数,得知参数external_scn_rejection_threshold_hours
的值为60(spfile是二进制文件不可以直接修改)为了验证是否是此原因引起,先不修改spfile,而是通过spfile重构pfile静态参数文件,然后直接修改pfile文件的参数,指定实例使用此pfile启动,确保没问题后,再使用pfile重构spfile。
首先通过spfile重构pfile(关闭实例的状态下也可以进行,pfile文件名字为initSID.ora)
SQL>create pfile from spfile;
使用vi打开此pfile,修改external_scn_rejection_threshold_hours参数的值为24
vi /home/oracle/oracle10g/product/10.2.0/db_1/dbs/initYJDB.ora
保存退出,使用此pfile启动实例
SQL>startup pfile='/home/oracle/oracle10g/product/10.2.0/db_1/dbs/initYJDB.ora'
观察结果,确认运行正常,实例启动后不会再自动关闭。可以重构spfile了(实例默认是使用spfile启动的),注意这一步只能在实例关闭阶段执行。
SQL>shutdown immediate;
SQL>create spfile from pfile;
之后正常启动实例
SQL>startup;
没有报ORA-32004错误了,而且实例可以正常稳定运行,故障解决。
发表回复