Address: http://tdqing.javaeye.com/blog/453061
Today, the development server suddenly fails to connect. After the sqlplus/nolog, Conn/As sysdba, and startup commands are displayed
SQL> startup
ORA-01078: Failure in Processing System Parameters
LRM-00109: cocould not open parameter file '/opt/Oracle10g/product/10.2/db_1/dbs/initora10g. ora'
The file does not exist. It is estimated that the shutdown is caused by illegal shutdown.
This is because in Oracle9i and Oracle10g, Oracle uses spfile by default to start the database. If spfile does not exist, the above error will occur.
Solution 1 (verified ):
Copy the file in the form of init. ora.012009233838 in the $ oracle_base/admin/database name/pfile directory to the initoracle. ora directory in the $ ORACLE_HOME/DBS directory. (Note: Oracle in initoracle. ora is your instance name oracle_sid)
Solution 2:
Use the oraenv command to change the SID of the previous environment, and then use pfile to re-generate the spfile, so that the dynamic data volume can be changed.
Change Sid:
[Oracle @ Willie root] $ source oraenv
Oracle_sid = [Oracle]? Test1
Bash:/root/. bashrc: Permission denied
Re-generate spfile:
SQL> Create spfile from pfile;
File Created.
SQL> startup
Oracle instance started.
Appendix: Oracle operation commands in Linux
Restart Oracle
LSNRCTL stop
Sqlplus/nolog
Conn/As sysdba
Shutdown (startup)
Exit
LSNRCTL start
Start Oracle
Sqlplus/nolog
Conn/As sysdba
Startup
Exit
LSNRCTL start
Disable Oracle
LSNRCTL stop
Sqlplus/nolog
Conn/As sysdba
Shutdown
Exit
Check whether oracle is started
Netstat-an | grep 1521
Important: When you manually start and shut down the database, Linux will read the oracle_sid system variable of the system. If multiple databases exist, modify the oracle_sid variable to point to the database to be operated. For example, if export oracle_sid = oanet, The oanet instance is started and closed.