Criar um novo PDB a partir do 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;O que faz
Cria um novo pluggable database vazio a partir do template seed; define o usuário admin local, o tablespace padrão e o limite total de tamanho no mesmo comando.
Quando usar
Ao abrir um banco isolado para uma nova aplicação/schema; ao preparar ambientes de teste e desenvolvimento.
Atenção
O novo PDB sobe em MOUNTED; precisa de OPEN e SAVE STATE (para continuar aberto após um restart do CDB). Caminhos FILE_NAME_CONVERT errados gravam os arquivos no diretório errado; sem OMF o caminho completo do arquivo é obrigatório para DATAFILE (ORA-02236). Licenciamento: no 19c EE, 3 PDBs de usuário por CDB podem ser usados sem a opção Multitenant.
Relacionados
- Clonar um PDB no mesmo CDB (local / hot clone)
- Clonar um PDB de outro CDB via DB link (remote clone)
- Fazer unplug de um PDB e plug em outro (ou no mesmo) CDB
- Abrir PDBs e mantê-los abertos após restarts do CDB (SAVE STATE)
- Definir limites de CPU, memória, I/O e storage por PDB
- Confirmar em qual container você está e consultar todos os PDBs a partir do root (CDB_ / CONTAINERS)