数据库我爱编程

启动oracle时找不到spfile文件,报ORA-01078和

2015-02-06  本文已影响1628人  _Janly

使用环境

操作系统:OEL 5.6
数据库:Oracle 10.2.0.1.0
数据库主目录: /u01/app/oracle/product/10.2.0

问题描述

用sys用户登录sqlplus后,用startup命令启动Oracle时提示:
ORA-01078:failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/db_1/dbs/initorcl.ora'

[oracle@oracle ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Feb 4 15:05:02 2015
Copyright (c) 1982, 2005, 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 '/u01/app/oracle/product/10.2.0/db_1/dbs/initORCL.ora'

错误原因

在oracle9i、10g、11g最近几个版本中,数据库默认使用spfile启动数据库,如果spfile不存在,则就会出现上述错误。

解决办法:

1.用命令“find /u01 -name pfile”查询pfile文件位置

[[root@oracle ~]# find /u01 -name pfile
/u01/app/oracle/admin/ljl/pfile
[root@oracle ~]# cd /u01/app/oracle/admin/ljl/pfile
[root@oracle pfile]# ls
init.ora.026201514119

2.将$ORACLE_BASE/admin/ljl/pfile(/u01/app/oracle/admin/ljl/pfile)目录下的init.ora.026201514119形式的文件copy到$ORACLE_HOME/dbs目录下命名为initorcl.ora即可。

(注:initorcl.ora中的orcl为你的实例名 ORACLE_SID,这里我的SID为:ORCL)

[oracle@oracle ~]$ cd /u01/app/oracle/admin/ljl/pfile
[oracle@oracle pfile]$ ls
init.ora.026201514119
[oracle@oracle ~]$ cd $ORACLE_HOME/dbs
[oracle@oracle dbs]$ ls
hc_ljl.dat    hc_ORCL.dat   initdw.ora   init.ora    lkLJL    orapwljl  spfileljl.ora
[oracle@oracle dbs]$cp  /u01/app/oracle/admin/ljl/pfile/init.ora.026201514119  $ORACLE_HOME/dbs/initORCL.ora
[oracle@oracle dbs]$ ls
hc_ljl.dat    hc_ORCL.dat   initdw.ora   init.ora   ininORCL.ora    lkLJL    orapwljl  spfileljl.ora

3.startup启动数据库

SQL> startup 
ORACLE instance started.

Total System Global Area  608174080 bytes
Fixed Size                  1220844 bytes
Variable Size             167776020 bytes
Database Buffers          436207616 bytes
Redo Buffers                2969600 bytes
Database mounted.
Database opened.
上一篇下一篇

猜你喜欢

热点阅读