SQL> show pdbs; CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 TEST1 READ WRITE NO 4 PROD2 READ WRITE NO
----- PRIMARY
SQL> show pdbs; CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 TEST1 READ WRITE NO 4 PROD2 READ WRITE NO
And of course the same PDBs on the standby:
----- STANDBY
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 TEST1 MOUNTED 4 PROD2 MOUNTED
----- STANDBY
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 TEST1 MOUNTED 4 PROD2 MOUNTED
Let’s change the PDB test1 name to prod1: The PDB rename operation is straightforward (but it requires a brief downtime). To be done on the primary:
SQL> alter pluggable database test1 close;Pluggable database altered.SQL> alter pluggable database red open restricted;Pluggable database altered.SQL> alter session set container=test1;Session altered.SQL> alter pluggable database rename global_name to prod1;Pluggable database altered.SQL> alter session set container=cdb$root;Session altered.SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PROD1 READ WRITE YES 4 PROD2 READ WRITE NOSQL> alter pluggable database prod1 close;Pluggable database altered.SQL> alter pluggable database prod1 open;Pluggable database altered.SQL> alter pluggable database test1 close;Pluggable database altered.SQL> alter pluggable database test1 open restricted;Pluggable database altered.SQL> alter session set container=test1;Session altered.SQL> alter pluggable database rename global_name to prod1;Pluggable database altered.SQL> alter session set container=cdb$root;Session altered.SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PROD1 READ WRITE YES 4 PROD2 READ WRITE NOSQL> alter pluggable database prod1 close;Pluggable database altered.SQL> alter pluggable database prod1 open;Pluggable database altered.
On the standby, I can see that the PDB changed its name:
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 PROD1 MOUNTED 4 PROD2 MOUNTEDSQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 PROD1 MOUNTED 4 PROD2 MOUNTED
The PDB name change is propagated transparently with the redo apply.
On the primary I have:
----- PRIMARY
SQL> show pdbs; CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 TEST1 READ WRITE NO 4 PROD2 READ WRITE NO
----- PRIMARY
SQL> show pdbs; CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 TEST1 READ WRITE NO 4 PROD2 READ WRITE NO
And of course the same PDBs on the standby:
----- STANDBY
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 TEST1 MOUNTED 4 PROD2 MOUNTED
----- STANDBY
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 TEST1 MOUNTED 4 PROD2 MOUNTED
Let’s change the PDB test1 name to prod1: The PDB rename operation is straightforward (but it requires a brief downtime). To be done on the primary:
SQL> alter pluggable database test1 close; Pluggable database altered. SQL> alter pluggable database red open restricted; Pluggable database altered. SQL> alter session set container=test1; Session altered. SQL> alter pluggable database rename global_name to prod1; Pluggable database altered. SQL> alter session set container=cdb$root; Session altered. SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PROD1 READ WRITE YES 4 PROD2 READ WRITE NO SQL> alter pluggable database prod1 close; Pluggable database altered. SQL> alter pluggable database prod1 open; Pluggable database altered. SQL> alter pluggable database test1 close; Pluggable database altered. SQL> alter pluggable database test1 open restricted; Pluggable database altered. SQL> alter session set container=test1; Session altered. SQL> alter pluggable database rename global_name to prod1; Pluggable database altered. SQL> alter session set container=cdb$root; Session altered. SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PROD1 READ WRITE YES 4 PROD2 READ WRITE NO SQL> alter pluggable database prod1 close; Pluggable database altered. SQL> alter pluggable database prod1 open; Pluggable database altered.
On the standby, I can see that the PDB changed its name:
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 PROD1 MOUNTED 4 PROD2 MOUNTED SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED MOUNTED 3 PROD1 MOUNTED 4 PROD2 MOUNTED
The PDB name change is propagated transparently with the redo apply.