GRANT REGISTER DATABASE makes the virtual catalog owner has more power to choose databases to register, manage and unregister, which is not a good practice in my humble opinion. Here are the steps:
found eligible base catalog owned by CATOWNER created virtual catalog against base catalog owned by CATOWNER
Register both the primary and standby database.
[oracle@primary01 ~]$ rman catalog vpcowner/password@smalldb target sys/password@primdb1 ... connected to target database: COMPDB (DBID=841830157) connected to recovery catalog database
RMAN> list db_unique_name all;
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 ------- ------- ----------------- --------------- ------------------ 2 COMPDB 841830157 PRIMARY PRIMDB ... [oracle@primary01 ~]$ rman catalog vpcowner/password@smalldb target sys/password@standb1 ... connected to target database: COMPDB (DBID=841830157, not open) connected to recovery catalog database
RMAN> list db_unique_name all;
List of Databases DB Key DB Name DB ID Database Role Db_unique_name ------- ------- ----------------- --------------- ------------------ 2 COMPDB 841830157 PRIMARY PRIMDB 2 COMPDB 841830157 STANDBY STANDBThe step of CREATE VIRTUAL CATALOG must be after the step of granting, either GRANT CATALOG FOR DATABASE clause or GRANT REGISTER DATABASE clause.