Wednesday, February 10, 2016

12c: Clone pluggable database using existing Pluggable database

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--




Querys to monitor RAC

following few  Query's will help to find out culprits-  Query to check long running transaction from last 8 hours  Col Sid Fo...