Crear una PDB nueva desde PDB$SEED
OracleMultitenantComando
-- In CDB$ROOT, as SYSDBA:
CREATE PLUGGABLE DATABASE <pdb>
ADMIN USER pdbadmin IDENTIFIED BY "<password>" ROLES = (DBA)
DEFAULT TABLESPACE users
DATAFILE '/u02/oradata/<cdb>/<pdb>/users01.dbf' SIZE 512M AUTOEXTEND ON NEXT 64M
FILE_NAME_CONVERT = ('/u02/oradata/<cdb>/pdbseed/', '/u02/oradata/<cdb>/<pdb>/')
STORAGE (MAXSIZE 50G);
-- With OMF/ASM, instead of FILE_NAME_CONVERT: CREATE_FILE_DEST = '+DATA'
ALTER PLUGGABLE DATABASE <pdb> OPEN;
ALTER PLUGGABLE DATABASE <pdb> SAVE STATE;
SELECT con_id, name, open_mode, restricted FROM v$pdbs ORDER BY con_id;Qué hace
Crea una pluggable database nueva y vacía a partir de la plantilla seed; define en el mismo comando el usuario administrador local, el tablespace por defecto y el límite de tamaño total.
Cuándo usarlo
Al abrir una base de datos aislada para una aplicación/esquema nuevo; al preparar entornos de prueba y desarrollo.
Precaución
La nueva PDB queda en MOUNTED; necesita OPEN y SAVE STATE (para seguir abierta tras reiniciar la CDB). Rutas FILE_NAME_CONVERT erróneas escriben los archivos en el directorio equivocado; sin OMF es obligatoria una ruta de archivo completa para DATAFILE (ORA-02236). Licencias: en 19c EE se pueden usar 3 PDB de usuario por CDB sin la opción Multitenant.
Relacionado
- 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)
- Abrir PDB y mantenerlas abiertas tras reinicios de la CDB (SAVE STATE)
- 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)