With Oracle's standby technology, a single-instance database can be upgraded to a RAC database. This approach can effectively reduce the downtime for single instance migration to the RAC environment.
This article describes the errors encountered during the entire operation.
A few minor errors to initialize parameter settings were first touched, the main problem being the Flash_recovery_area setting to the ASM instance that caused the problem:
sql> Startup Nomount Pfile=/export/home/oracle/inittest11gr1.ora
Ora-01261:parameter db_recovery_file_dest Destination string cannot be translated
The problem is resolved after setting Db_recovery_file_dest to the local disk.
Because setting db_recovery_file_dest may cause bugs during the switchover process, the db_recovery_file_dest is closed in both the primary and standby databases.
Then check the main library to the remote archive of the standby database, found that query V$archive_dest view, corresponding to the destination of the remote archive ORA-1031 error.
Sql> Select Dest_name, status, target, destination, error
2 from V$archive_dest
3 where dest_id in (1, 2);
Dest_name STATUS TARGET Destination ERROR
-------------------- ------ ------- -------------------------------- -------------------
Log_archive_dest_1 VALID Primary/data/oradata/test11g/archivelog
Log_archive_dest_2 ERROR STANDBY test11gr ORA-01031: Insufficient permissions
This error without permission is caused by the absence of a copy of the password file. Copy the remote password file to the local $oracle_home/dbs directory, rename it, and modify it to ORAPWTEST11GR1. You must restart the local instance to load the password file. After successfully loading the password file, query V$archive_dest view, the result returned to normal:
Sql> Select Dest_name, status, target, destination, error
2 from V$archive_dest
3 where dest_id in (1, 2);
Dest_name STATUS TARGET Destination ERROR
-------------------- ------ ------- -------------------------------- -----------------------
Log_archive_dest_1 VALID Primary/data/oradata/test11g/archivelog
Log_archive_dest_2 VALID STANDBY test11gr
Then after starting the recovery process for the standby database, the corresponding process was not checked to work, the background alert file was checked, and a number of errors were found:
Mon 13 16:55:17 2009
ALTER DATABASE recover managed standby database disconnect from session
Attempt to start background Managed Standby Recovery process (TEST11GR1)
Mon 13 16:55:17 2009
MRP0 started with pid=15, OS id=8356
Mrp0:background Managed Standby Recovery process started (TEST11GR1)
Fast Parallel Media Recovery enabled
Mon 13 16:55:22 2009
Managed Standby Recovery not using real time Apply
Mrp0:background Media Recovery terminated with error 1110
Errors in FILE/DATA/ORACLE/DIAG/RDBMS/TEST11GR/TEST11GR1/TRACE/TEST11GR1_MRP0_8356.TRC:
Ora-01110:data file 1: ' +DATA/TEST11G/SYSTEM01.DBF '
Ora-01122:database file 1 failed verification check
Ora-01110:data file 1: ' +DATA/TEST11G/SYSTEM01.DBF '
Ora-01251:unknown file Header Version read for File number 1
Errors in FILE/DATA/ORACLE/DIAG/RDBMS/TEST11GR/TEST11GR1/TRACE/TEST11GR1_MRP0_8356.TRC:
Ora-01110:data file 1: ' +DATA/TEST11G/SYSTEM01.DBF '
Ora-01122:database file 1 failed verification check
Ora-01110:data file 1: ' +DATA/TEST11G/SYSTEM01.DBF '
Ora-01251:unknown file Header Version read for File number 1
Mrp0:background Media Recovery process shutdown (TEST11GR1)
Completed:alter database recover managed standby database disconnect from session
Mon 13 17:07:05 2009
Db_recovery_file_dest_size of 4096 MB is 0.00% used. This is a
User-specified limit on the amount of spaces that'll be used by this