Создать новую PDB из PDB$SEED
OracleMultitenantКоманда
-- 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;Что делает
Создаёт новую пустую pluggable database из шаблона seed; в той же команде задаёт локального администратора, табличное пространство по умолчанию и общий лимит размера.
Когда использовать
При открытии изолированной базы данных для нового приложения/схемы; при подготовке тестовых сред и сред разработки.
Внимание
Новая PDB поднимается в состоянии MOUNTED; ей нужны OPEN и SAVE STATE (чтобы оставаться открытой после перезапуска CDB). Неверные пути FILE_NAME_CONVERT запишут файлы не в тот каталог; без OMF полный путь к файлу для DATAFILE обязателен (ORA-02236). Лицензирование: в 19c EE можно использовать 3 пользовательские PDB на CDB без опции Multitenant.
Связанные материалы
- Клонировать PDB в пределах той же CDB (локальный / горячий клон)
- Клонировать PDB из другой CDB через DB link (удалённый клон)
- Отключить PDB (unplug) и подключить её к другой (или той же) CDB
- Открыть PDB и сохранить их открытыми при перезапусках CDB (SAVE STATE)
- Задать для каждой PDB лимиты CPU, памяти, I/O и хранилища
- Проверить, в каком контейнере вы находитесь, и запросить все PDB из root (CDB_ / CONTAINERS)