报错:
在启动Oracle数据库时报错,如下:
[oracle@localhost ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Sat Feb 16 19:43:43 2013
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora'
原因分析:
这是因为在oracle10g和oracle11g中,数据库默认将使用spfile启动数据库,如果spfile不存在,则就会出现上述错误。
解决一:
用find /u01 -name pfile命令查找pfile文件的位置,/u01/app/oracle/admin/orcl/pfile/
将$ORACLE_BASE/admin/orcl/pfile目录下的init.ora.2212013132036形式的文件copy 到$ORACLE_HOME/dbs目录下命名为initorcl.ora即可。
(注:initorcl.ora中的orcl为你的实例名 ORACLE_SID,这里我的SID为:center)
方法二:
将$ORACLE_HOME/dbs目录下spflieorcl.ora改名为spfilecenter.ora即可。(注:spfilecenter.ora中的center为环境变量中设置的SID,我的是center)
方法三:
拷贝pfile文件下的init.ora.61420130339到dbs下,并重命名成init+实例名.ora即可
{{{
[oracle@localhost oracle]$ find /u01 -name pfile
/u01/app/admin/orcl/pfile
[oracle@localhost oracle]$ cd /u01/app/admin/orcl/pfile
[oracle@localhost pfile]$ ls
init.ora.61420130339
[oracle@localhost pfile]$ cp init.ora.61420130339 /u01/app/oracle/dbs/initdevdb.ora
}}}