During a recent clone using RMAN Duplicate, RMAN failed with RMAN-11093 and ERROR: ORA-32010: cannot find entry to delete in SPFILE .
–Tail from RMAN Duplicate logfile with the Errors
Cause:
Looking at MOS Doc ORA-32010: cannot find entry to delete in SPFILE (Doc ID 1384262.1), identifies the cause to “Due to some comments in the pfile, and/or invalid Entries for example missing a single quote to enclose values for parameters as set in pfile/spfile.
I did make a change to PFILE to convert the files from ASM to EXT on the source node. (As below). *.db_file_name_convert=’+EBSPROD_ASM/’,’/u10/orc/data/’,’+EBSPROD_ASM/ebsprd/datafile/’,/u10/orc/data/’
Looking at it again, clearly shows the extra tick.
SQL> show parameter db_file_name_convert
NAME TYPE VALUE
——————————
db_file_name_convert string +EBSPRD_ASM/, /u20/oracle/data/, +EBSPRD_ASM/ebsprd/datafile/, /u20/oracle/data/’
SQL>
Solution: Manually complete the RMAN Duplicate from this point.
1) BACKUP CONTROL FILE FROM PROD
SQL> alter database backup control file to trace as ‘/HOME/ORACLE/RG_cntrfile.sql’;
2) EDIT THE CONTROL FILE (“SET DATABASE”, change the data files with path of target( you can obtain path from the failed RMAN log file when it laid out the files or manually modifying it, change the DB name). Save the file on clone database node (/home/affebsdev/rg_cntrfile.sql)
–SEE BELOW – contents of rg_cntrfile.sql
CREATE CONTROLFILE REUSE SET DATABASE “AFFEBSDEV” RESETLOGS FORCE LOGGING ARCHIVELOG
MAXLOGFILES 32
MAXLOGMEMBERS 5
MAXDATAFILES 512
MAXINSTANCES 8
MAXLOGHISTORY 14607
LOGFILE
GROUP 1 (‘/u10/oracle/data/log01a.dbf’,’/u10/oracle/data/log01b.dbf’) size 1048576512,
GROUP 2 (‘/u10/oracle/data/log02a.dbf’,’/u10/oracle/data/log02b.dbf’) size 1048576512
DATAFILE
‘/u10/oracle/data/system01.dbf’,
‘/u10/oracle/data/system02.dbf’,
‘/u10/oracle/data/system03.dbf’,
‘/u10/oracle/data/system04.dbf’,
‘/u10/oracle/data/system05.dbf’,
‘/u10/oracle/data/ctxd01.dbf’,
‘/u10/oracle/data/owad01.dbf’,
‘/u10/oracle/data/a_queue02.dbf’,
‘/u10/oracle/data/odm.dbf’,
‘/u10/oracle/data/olap.dbf’,
‘/u10/oracle/data/sysaux01.dbf’,
….
….
…
CHARACTER SET UTF8
;
3) SHUTDOWN THE CLONE DATABASE INSTANCE
SQL>Shutdown Immediate;
4) FIX THE PFILE WITH CORRECT VALUE, then create SPFILE from PFILE.
Vi initaffebdev.ora
Fix the value and save the init file.
5) CREATE SPFILE FROM PFILE
SQL>sqlplus / as sysdba
SQL>create spfile from pfile=’ initaffebdev.ora’;
6) STARTUP NOMOUNT;
7) Execute the Controlfile on the Target Node as SYSDBA
SQL> sqlplus / as sysdba @rg_cntrfile.sql
Control file created.
8) Mount the database
SQL> alter database Mount;
ORA-01100: database already mounted
9) Database can now be opened with reset logs.
SQL> alter database open resetlogs;
Database altered.
11) Re-create temp table space as below
ALTER TABLESPACE TEMP1 ADD TEMPFILE ‘/u10/oracle/data/temp01.dbf’ SIZE 6120M REUSE AUTOEXTEND OFF;
ALTER TABLESPACE TEMP1 ADD TEMPFILE ‘/u10/oracle/data/temp01a.dbf’ SIZE 6120M REUSE AUTOEXTEND OFF;
ALTER TABLESPACE TEMP2 ADD TEMPFILE ‘/u10/oracle/data/temp02.dbf’ SIZE 6120M REUSE AUTOEXTEND OFF;
ALTER TABLESPACE TEMP2 ADD TEMPFILE ‘/u10/oracle/data/temp02a.dbf’ SIZE 6120M REUSE AUTOEXTEND OFF;
12) Verify the status
sqlplus ” / as sysdba”
SQL> select open_mode from v$database;
OPEN_MODE
——————–
READ WRITE
Now continue with cloning/post clone steps J