Abrir PDB y mantenerlas abiertas tras reinicios de la CDB (SAVE STATE)
OracleMultitenantComando
-- Open all PDBs (RAC: INSTANCES = ALL):
ALTER PLUGGABLE DATABASE ALL OPEN;
-- ALTER PLUGGABLE DATABASE <pdb> OPEN INSTANCES = ALL;
-- Save the current open state (opens automatically after a CDB restart):
ALTER PLUGGABLE DATABASE <pdb> SAVE STATE;
-- Saved states:
SELECT con_name, instance_name, state, restricted FROM dba_pdb_saved_states;
-- Remove the saved state:
ALTER PLUGGABLE DATABASE <pdb> DISCARD STATE;
-- If it opens RESTRICTED, find the reason:
SELECT name, cause, type, message
FROM pdb_plug_in_violations
WHERE status <> 'RESOLVED';Qué hace
Abre las PDB en READ WRITE y guarda su estado de apertura actual para que la PDB se abra automáticamente en el mismo modo cuando se reinicie la CDB.
Cuándo usarlo
Tras crear, conectar o clonar una PDB; cuando nota que las PDB quedan en MOUNTED tras reiniciar la CDB.
Precaución
SAVE STATE registra el estado en el momento del comando: si lo ejecuta con la PDB cerrada, se registra el estado "cerrado" (o se elimina el registro). En RAC el estado es por instancia; con gestión basada en servicios (servicios de PDB mediante srvctl), se prefiere el arranque por Clusterware frente a SAVE STATE. En un standby de Data Guard el modo de apertura depende del rol.
Relacionado
- Crear una PDB nueva desde PDB$SEED
- Clonar una PDB dentro de la misma CDB (clon local / hot clone)
- Clonar una PDB desde otra CDB por un DB link (clon remoto)
- Desconectar (unplug) una PDB y conectarla (plug) en otra CDB (o en la misma)
- Definir límites de CPU, memoria, I/O y almacenamiento por PDB
- Confirmar en qué contenedor está y consultar todas las PDB desde el root (CDB_ / CONTAINERS)