Tuesday 29 July, 2008 - 22:50
DB Recovery Cleanup
During yesterday's recovery of the EXAMPLE database on the padstow cluster, I did not detect that the SPFILE on the +DATA disk group had the incorrect values for the CONTROLFILE parameter. This caused the automatic startup to fail.
I found a
spfileexample2.ora
in the
$ORACLE_HOME/dbs
directory on
padstow2
. Since I was using that node to do the database recovery, the correct SPFILE was being used during the various startups. The appearance on the local disk was a result of not specifying a destination for the SPFILE in the
CREATE SPFILE FROM PFILE
command.
I used ASMCMD to find the latest versions of the control files in the +DATA and +FRA disk groups, and created aliases (via mkalias) from the EXAMPLE directories of these disk groups.
- Created a text version of the spfile:
-
edited
/home/oracle/initexample1.ora
to update the CONTROLFILE parameters to use the aliases I created. - Use the updated PFILE to create a new SPFILE:
STARTUP NOMOUNT CREATE PFILE='/home/oracle/initexample1.ora' FROM SPFILE; SHUTDOWN IMMEDIATE EXIT
STARTUP NOMOUNT PFILE='/home/oracle/initexample1.ora' CREATE SPFILE='+DATA' FROM PFILE='/home/oracle/initexample1.ora'; SHUTDOWN IMMEDIATE STARTUP
The use of aliases should avoid the necessity of updating the SPFILE in future whenever the name of the control file changes.
It would appear that the old archived redo log files on the +FRA disk group got corrupted blocks. I needed to delete all of these old archived redo log files in order to get a clean backup.