Currently I have only one pluggable database RED on container database
I want to create clone Pluggable database GREEN using existing pluggable database RED
Steps to clone or create new pluggable database using existing on cdb
step1: Place the pluggable database in read only mode
SQL> alter pluggable database red close;
Pluggable database altered.
SQL> alter pluggable database red open read only force;
Pluggable database altered.
SQL> select name, open_mode from v$pdbs;
NAME OPEN_MODE
------------------------------ ----------
PDB$SEED READ ONLY
RED READ ONLY
[oracle@tnc61 datafile]$ ls -ltr
total 896976
-rw-r----- 1 oracle dba 20979712 Feb 10 00:00 o1_mf_temp_ccogfjdy_.dbf
-rw-r----- 1 oracle dba 5251072 Feb 10 06:43 o1_mf_users_ccogg54y_.dbf
-rw-r----- 1 oracle dba 272637952 Feb 10 06:43 o1_mf_system_ccogf8ds_.dbf
-rw-r----- 1 oracle dba 639639552 Feb 10 06:43 o1_mf_sysaux_ccogf84p_.dbf
STEP2: Make sure directory is created on the server if required and create pluggable database as follows
[oracle@tnc61 ~]$ mkdir -p /u01/app/oracle/oradata/COLOUR/GREEN
[oracle@tnc61 ~]$ cd /u01/app/oracle/oradata/COLOUR/GREEN
[oracle@tnc61 GREEN]$ pwd
/u01/app/oracle/oradata/COLOUR/GREEN
SQL> create pluggable database green from red file_name_convert=('/u01/app/oracle/oradata/COLOUR/2B63B360CA071846E0530100007FA5FC/datafile/o1_mf_sysaux_ccogf84p_.dbf','/u01/app/oracle/oradata/COLOUR/GREEN/datafile/sysaux_01.dbf','/u01/app/oracle/oradata/COLOUR/2B63B360CA071846E0530100007FA5FC/datafile/o1_mf_system_ccogf8ds_.dbf','/u01/app/oracle/oradata/COLOUR/GREEN/datafile/system_01.dbf','/u01/app/oracle/oradata/COLOUR/2B63B360CA071846E0530100007FA5FC/datafile/o1_mf_users_ccogg54y_.dbf','/u01/app/oracle/oradata/COLOUR/GREEN/datafile/users_01.dbf','/u01/app/oracle/oradata/COLOUR/2B63B360CA071846E0530100007FA5FC/datafile/o1_mf_temp_ccogfjdy_.dbf','/u01/app/oracle/oradata/COLOUR/GREEN/datafile/temp_01.dbf');
Pluggable database created.
after creating new pluggable database, the new pluggable database will be in MOUNT Stage
SQL> select name, open_mode from v$pdbs;
NAME OPEN_MODE
------------------------------ ----------
PDB$SEED READ ONLY
RED READ ONLY
GREEN MOUNTED
STEP3: close and open old and new pluggable databases
SQL> alter pluggable database all close immediate;
Pluggable database altered.
SQL> alter pluggable database all open;
Pluggable database altered.
SQL> select name, open_mode from v$pdbs;
NAME OPEN_MODE
------------------------------ ----------
PDB$SEED READ ONLY
RED READ WRITE
GREEN READ WRITE
STEP4: Add entry in listener.ora and tnsnames.ora
GREEN =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.118)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = green)
)
)
STEP5: Make sure services are created for new pluggable database from v$services;
SQL> select name, pdb from V$SERVICES order by creation_date;
SQL> column name format a20
SQL> column pdb format a40
SQL> /
NAME PDB
-------------------- ----------------------------------------
SYS$BACKGROUND CDB$ROOT
SYS$USERS CDB$ROOT
colourXDB CDB$ROOT
colour CDB$ROOT
red RED
green GREEN
---Nikhil Tatineni--
---12c: Pluggable databases--