Thursday, November 4, 2021

ORA-15040 when duplicating or creating database on Exadata (db_unique_name is the same)

I got stuck into the situation when I needed to move the database between RACs. I decided to do it via RMAN : duplicate first and then remove database on the source. After some preparations, when I started to check how the restoration over the network works, I got the error :

Recovery Manager: Release 12.1.0.2.0 - Production on Thu Nov 4 17:03:05 2021
                                                  
Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.     
                                                 
connected to target database: CDBM02 (not mounted)
                
RMAN> restore controlfile from service "hostname/service_dev" ;
               
Starting restore at 04.11.2021 17:03:30        
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1                 
channel ORA_DISK_1: SID=292 device type=DISK
                                            
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: using network backup set from service
hostname/service_dev
channel ORA_DISK_1: restoring control file
dbms_backup_restore.restoreCancel() failed
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 11/04/2021 17:03:44
ORA-19660: some files in the backup set could not be verified
ORA-19661: datafile 0 could not be verified
ORA-19849: error while reading backup piece from service
hostname/service_dev
ORA-19504: failed to create file "+RECOC9"
ORA-17502: ksfdcre:4 Failed to create file +RECOC9
ORA-15001: diskgroup "RECOC9" does not exist or is not mounted
ORA-15040: diskgroup is incomplete
                                  
RMAN>

I started to check compatibility attributes for asm diskgroup (it was set to compatible.rdbms=12.1 and compatible.asm=19.0), permissions of $ORACLE_HOME/bin/oracle binary, alert logs (ASM and database), trace files etc. The trace files shown me the following for the every exadata grid disk :

WARNING: disk locally closed resulting in I/O error [0xf4]

I started to suspect that the cause was inside the storage cells. So consulting with alert log files on the cells gave me the clue :

Warning:  Two databases from different clusters have the same DB_UNIQUE_NAME parameter value of "SERVICE_DEV".
Rejecting open request from host ...

Changing db_unique_name parameter on the source resolved the issue.

P.S. Later I found MOS Note "Exadata: Warning Cellsrv Rejecting Open Request from Host Due to DB Name Conflict (Doc ID 2060753.1)" describing the same issue and giving some additional advice regarding it.

 

No comments:

Post a Comment