IN 12C PLUGGABLE DATABASES ARE NOT STARTED UP AUTOMATICALLY BECAUSE THERE IS NO OPTION TO AUTO STARTUP;
. oraenv
sqlplus / as sysdba
SQL>select host_name, Instance_name,version, status from v$Instnace;
SQL>run query to check list of PDB's
SELECT b.con_id, a.pdb_name, a.status,b.open_mode
from dba_pdbs a, v$pdbs b
where a.pdb_name=b.name
order by b.con_id;
CON_ID PDB_NAME STATUS OPEN_MODE
2 PDB_SEED NORMAL READ-ONLY
3 PDB_HR NORMAL READ-WRITE
4 PDB_MKTG NORMAL READ-WRITE
SQLPLUS>SHUT DHOWN IMMEDIATE
SQLPLUS>STARTUP
SELECT b.con_id, a.pdb_name, a.status,b.open_mode
from dba_pdbs a, v$pdbs b
where a.pdb_name=b.name
order by b.con_id;
CON_ID PDB_NAME STATUS OPEN_MODE
2 PDB_SEED NORMAL MOUNTED
3 PDB_HR NORMAL MOUNTED
4 PDB_MKTG NORMAL MOUNTED
SQL>COLOUMN trigger_name FORMAT 'a30'
SQL>select trigger_name, status from cdb_triggers
where triggering_event like '%STARTUP%';
SQL>CREATE TRIGGER trg_auto_start_open_pdbs
AFTER STARTUP
ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE ALL OPEN READ WRITE';
END;
/
SQL>COLOUMN trigger_name FORMAT 'a30'
SQL>select trigger_name, status from cdb_triggers
where triggering_event like '%STARTUP%';
SQL>SHUT down immediate ;
SQL>startup;
SELECT b.con_id, a.pdb_name, a.status,b.open_mode
from dba_pdbs a, v$pdbs b
where a.pdb_name=b.name
order by b.con_id;
CON_ID PDB_NAME STATUS OPEN_MODE
2 PDB_SEED NORMAL READ-ONLY
3 PDB_HR NORMAL READ-WRITE
4 PDB_MKTG NORMAL READ-WRITE
SQL>COLOUMN trigger_name FORMAT 'a30'
SQL>select trigger_name, status from cdb_triggers
where triggering_event like '%STARTUP%';
trigger_name status
trg_auto_start_open_pdbs enabled
HOW TO GET METADATA
SQL>SELECT dbms_metadata.get_ddl('TRIGGER','TRG_AUTO_START_OPEN_PDBS')
from dual;
No comments:
Post a Comment