STARTUP fails with ORA-01078 failure in processing system parameters. Walk me through getting the database up.
ORA-01078 is about the parameter file, and the next line usually says which: LRM-00109 means the file could not be opened at all. The instance searches $ORACLE_HOME/dbs for spfileSID.ora, then spfile.ora, then initSID.ora, so I check those names and permissions, and whether someone changed ORACLE_SID or the home. If the spfile is gone, the fastest options are a PFILE backup, if our scripts keep one, or RMAN: RMAN can start a dummy instance without a parameter file and restore the spfile from the control file autobackup. If the spfile exists but a bad value was set, I create a PFILE from it, fix the value and start from the PFILE, then recreate the spfile. Last resort is a minimal PFILE with db_name, control_files and memory settings.
RMAN> SET DBID 1234567890;
RMAN> STARTUP FORCE NOMOUNT;
RMAN> RESTORE SPFILE FROM AUTOBACKUP;
SQL> CREATE PFILE='/tmp/init_fix.ora' FROM SPFILE;
SQL> STARTUP PFILE='/tmp/init_fix.ora';
SQL> CREATE SPFILE FROM PFILE='/tmp/init_fix.ora';
SQL> CREATE SPFILE FROM MEMORY;
Likely follow-up: The instance is still running but someone deleted the spfile. How do you get it back without downtime?
CREATE SPFILE FROM MEMORY rebuilds it from the running instance's current parameter values.