Saturday, October 1, 2016

Database Startup fails with errors ORA-01078, ORA-27046, ORA-01078

While using the ‘startup’ command to start the database getting the following error
SQL> startup;
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '......'
or
SQL> startup;
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '.......'
ORA-27046: file size is not a multiple of logical block size
OSD-04012: file size mismatch (OS 2558
Cause: There can be any of the following cause:
·        The ORACLE_SID environmental variable is set improperly.
·        The error occurred as database could not find the spfile and pfile on the default location or specified location.
·        The spfile exists in default location but it is corrupted and hence reported ORA-01078.
·        If spfile exists in non-default location and we started by STARTUP pfile= where inside pfile it holds the location of spfile=location then error reported ORA-1078 along with ORA-27046.
Solution:
·        At first, check whether your environment variable ORACLE_SID is set properly or not. On Linux system it is case sensitive. So dbase and Dbase is not same.
·        If you have good backup of spfile then restore it. From RMAN you can easily do it if you have autobackup of controlfile.
·        You can get your pfile at the location ORACLE_HOME\admin\”DB_name”\pfile. Edit the pfile first as per the requirement and make spfile from this pfile.
·        If the spfile backup does not exist then look at the database alert log file. In alert.log from the list of non-default create a pfile from spfile and later create spfile.

·        If you have corrupted spfile then from that, using binary utilities like strings available on Linux open that and create pfile. And then create spfile from that pfile.

No comments:

Post a Comment