issue:
when I tried to register the oracle DB with catalog DB during registration process got the below error.
RMAN> REGISTER DATABASE;
database registered in recovery catalog
starting full resync of recovery catalog
got ORA-02291: integrity constraint (RMAN.RLH_F1) violated - parent key not found
ORA-06512: at "RMAN.DBMS_RCVCAT", line 7261 during resync
retrying with snapshot controlfile
Creating and using snapshot control file for resync
starting full resync of recovery catalog
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03008: error while performing automatic resync of recovery catalog
ORA-02291: integrity constraint (RMAN.RLH_F1) violated - parent key not found
Cause:
could be the same Db already registered and not properly unregistred ,so that we got the above error.
Solution:
connect to RMAN catalog DB using Catalog user and execute the below package.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.11.0.0.0
SQL> select name,open_mode from v$database;
NAME OPEN_MODE
--------- --------------------
4RMANCAT READ WRITE
SQL> select 'EXEC DBMS_RCVCAT.UNREGISTERDATABASE('||DB_KEY||','||DBID||');'
command, resetlogs_time
from rc_database
where name = '&db_name'; 2 3 4
Enter value for db_name: TESTDB
old 4: where name = '&db_name'
new 4: where name = 'TESTDB'
from rc_database
*
ERROR at line 3:
ORA-00942: table or view does not exist
SQL> conn rman
Enter password:
Connected.
SQL> select 'EXEC DBMS_RCVCAT.UNREGISTERDATABASE('||DB_KEY||','||DBID||');'
command, resetlogs_time
from rc_database
where name = '&db_name';
Enter value for db_name: TESTDB
old 4: where name = '&db_name'
new 4: where name = 'TESTDB'
COMMAND
--------------------------------------------------------------------------------
RESETLOGS
---------
EXEC DBMS_RCVCAT.UNREGISTERDATABASE(85399,987618234);
28-JAN-21
SQL> EXEC DBMS_RCVCAT.UNREGISTERDATABASE(85399,987618234);
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.
SQL>
> rman target / catalog rman@RCATDB
Recovery Manager: Release 19.0.0.0.0 - Production on Wed Jan 12 06:11:50 2022
Version 19.6.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
connected to target database: TESTDB (DBID=987618234)
recovery catalog database Password:
connected to recovery catalog database
recovery catalog schema version 19.11.00.00. is newer than RMAN version
RMAN> REGISTER DATABASE ;
database registered in recovery catalog
starting full resync of recovery catalog
full resync complete
RMAN> list db_unique_name all;
List of Databases
DB Key DB Name DB ID Database Role Db_unique_name
------- ------- ----------------- --------------- ------------------
86302 TESTDB 987618234 PRIMARY TESTDB
No comments:
Post a Comment