Hey all,

Hope you are OK!

A great friend from mine call me some days ago because he was with a issue with Duplicate Database, with the following error:

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of Duplicate Db command at 05/17/2019 11:03:18
RMAN-05501: aborting duplication of target database
RMAN-03015: error occurred in stored script Memory Script
RMAN-04014: startup failed: ORA-27528: Transport: RDS required by Engineered System is not available

Well, the main error is ORA-27528: Transport: RDS required by Engineered System is not available

This error usually happens in Exadatas (Engineering System) or any other type of environment that use InfiniBand as InterConnect. This error is associated with the fact of RDS protocol is not enabled on ORACLE_HOME or GRID_HOME, which is very weird if we are running in a Exadata.

So, we need to check if RDS is enabled both for ORACLE_HOME and GRID_HOME.

[oracle@xxxdbadm01 oracle]$ $ORACLE_HOME/bin/skgxpinfo -v
Oracle RDS/IP (generic)

[grid@xxxdbadm01 oracle]$ $GRID_HOME/bin/skgxpinfo -v
Oracle RDS/IP (generic)

Both ORACLE_HOME and GRID_HOME have RDS enabled.

So, what is the issue?

In the Duplicate process, this friend was copying the SPFILE as part of Duplicate Process and this is the issue. In the Source Database, the CLUSTER_INTERCONNECT parameter was not with default value (which is blank – so, all the InterConnect IPs running in the server will be automatically detected). As he was copying the SPFILE of part of Duplicate, the IPs defined in source environment did not exist in target environment (the InfiniBand had different IPs).

We have two possible solutions:

  1. Create a PFILE with all source DB non-default values in the destination DB, changing of course the following parameters: CLUSTER_INTERCONNECTS, LOCAL_LISTENER e REMOTE_LISTENER.
  2. In the Duplicate command, change the CLUSTER_INTERCONNECTS parameter, example:
DUPLICATE TARGET DATABASE FOR STANDBY
FROM ACTIVE DATABASE
SET CONTROL_FILES '+DATA'
SET DB_CREATE_FILE_DEST '+DATA'
SET DB_UNIQUE_NAME 'XXXX'
SET audit_file_dest '/oracle/XXXX/adump'
SET DB_RECOVERY_FILE_DEST '+RECO'
SET LISTENER_NETWORKS ''
SET CLUSTER_INTERCONNECTS '';

Hope this helps.

Peace!

 

Vinicius