RMAN-05537: DUPLICATE without TARGET connection when auxiliary instance is started with spfile cannot use SPFILE clause during creation of Physical Standby using RMAN

RMAN> connect target sys

target database Password:

connected to target database: TESTDB1 (DBID=693279980)

RMAN> connect auxiliary sys@testdb2

auxiliary database Password:

connected to auxiliary database: TESTDB1 (not mounted)

RMAN>

run{

allocate channel prmy1 type disk;

allocate channel prmy2 type disk;

allocate auxiliary channel stby type disk;

duplicate target database for standby from active database

spfile

parameter_value_convert 'testdb1','testdb2'

set db_name='testdb1'

set db_unique_name='testdb2'

set db_file_name_convert='/testdb1/','/testdb2/'

set log_file_name_convert='/testdb1/','/testdb2/'

set control_files='+DATA/testdb2/CONTROLFILE/testdb201.ctl'

set log_archive_max_processes='4'

set standby_archive_dest = '/holding/testdb2/standby_logs'

set log_archive_dest_1 = 'LOCATION=/holding/testdb2/archive_logs valid_for=(online_logfile, all_roles)'

set log_archive_dest_2 = 'LOCATION=/holding/testdb2/standby_logs valid_for=(standby_logfile, standby_role)'

set standby_file_management='AUTO'

set log_archive_config='dg_config=(testdb1,testdb2)'

;

}

using target database control file instead of recovery catalog

allocated channel: prmy1

channel prmy1: SID=75 device type=DISK

allocated channel: prmy2

channel prmy2: SID=137 device type=DISK

allocated channel: stby

channel stby: SID=130 device type=DISK

Starting Duplicate Db at 2017-04-19 14:45:24

released channel: prmy1

released channel: prmy2

released channel: stby

RMAN-00571: =================================================

RMAN-00569: ===== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ====================================================

RMAN-03002: failure of Duplicate Db command at 04/19/2017 14:45:24

RMAN-05501: aborting duplication of target database

RMAN-05537: DUPLICATE without TARGET connection when auxiliary instance is started with spfile cannot use SPFILE clause

Solution:

Option 1:

Shutdown database in auxiliary database and start it with pfile.

[oracle@testdb2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Wed Apr 19 14:54:38 2017

Copyright (c) 1982, 2011, Oracle. All rights reserved.

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> shutdown immediate;

ORA-01507: database not mounted

ORACLE instance shut down.

SQL> startup nomount pfile=?/dbs/inittestdb2.ora

ORACLE instance started.

Total System Global Area 271437824 bytes

Fixed Size 2227456 bytes

Variable Size 213910272 bytes

Database Buffers 50331648 bytes

Redo Buffers 4968448 bytes

Option 2:

Remove “SPFILE” keyword from rman clone command

run{

allocate channel prmy1 type disk;

allocate channel prmy2 type disk;

allocate auxiliary channel stby type disk;

duplicate target database for standby from active database

parameter_value_convert 'testdb1','testdb2'

set db_name='testdb1'

set db_unique_name='testdb2'

set db_file_name_convert='/testdb1/','/testdb2/'

set log_file_name_convert='/testdb1/','/testdb2/'

set control_files='+DATA/testdb2/CONTROLFILE/testdb201.ctl'

set log_archive_max_processes='4'

set standby_archive_dest = '/holding/testdb2/standby_logs'

set log_archive_dest_1 = 'LOCATION=/holding/testdb2/archive_logs valid_for=(online_logfile, all_roles)'

set log_archive_dest_2 = 'LOCATION=/holding/testdb2/standby_logs valid_for=(standby_logfile, standby_role)'

set standby_file_management='AUTO'

set log_archive_config='dg_config=(testdb1,testdb2)'

;

}