[oracle@toughhou database]$ sqlplus /nolog
SQL> conn / as sysdba
SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/opt/oracle/product/10.1.0/db_1/dbs/initORCL.ora'
错误原因:oracle 9i和10i中,数据库默认使用pfile启动数据库,如果pfile不存在则会出现上述错误。
解决方法:将$ORACLE_BASE/admin/orcl/pfile/init.ora.8212013184057形式的文件copy到$ORACLE_HOME/dbs目录下initoracle.ora即可。
[oracle@toughhou pfile]$ cp /opt/oracle/admin/orcl/pfile/init.ora.8212013184057 /opt/oracle/product/10.1.0/db_1/dbs/initORCL.ora
此时再试启动数据库,发现另外的问题。
SQL> startup
ORACLE instance started.
Total System Global Area 536870912 bytes
Fixed Size 1220408 bytes
Variable Size 150995144 bytes
Database Buffers 377487360 bytes
Redo Buffers 7168000 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
这个错误主要是lk<SID>文件造成的,该文件位于ORALCE_HOME下的dbs目录下,
这个lk<SID>的主要作用是说明DATABASE MOUNT上了,不用在MOUNT了.DATABASE UNMOUNT 后会删除掉,如果DATABASE确实没有MOUNT,这个文件在你也MOUNT上,只有手工删除,所以一定要小心.
解决ORA-01102问题的具体步骤:
[root@toughhou dbs]# /sbin/fuser -k lkORCL
/opt/oracle/product/10.1.0/db_1/dbs/lkORCL: 10636 10638 10640 10642 10644 10646 10648 10650 10652 10654 10656 10670 10738 11164 12895
该文件没释放,用fuser命令kill掉:
[root@toughhou dbs]# /sbin/fuser -u lkORCL
SQL> startup
ORACLE instance started.
Total System Global Area 536870912 bytes
Fixed Size 1220408 bytes
Variable Size 150995144 bytes
Database Buffers 377487360 bytes
Redo Buffers 7168000 bytes
Database mounted.
Database opened.
此时再试已经可以正常启动了。