Удаление pluggable database в Oracle Database 18c Express Edition
Начиная с Oracle Database 12с, поддерживается новая архитектура – Multitenant, которая предоставляет возможность использовать множество баз данных для консолидации их в составе единой главной базы данных. Такое объединение упрощает задачи администрирования баз данных. Единая и главная база данных используется в качестве платформы и называется контейнерная база данных (Container Database – CDB), а база данных из множества работающих в составе контейнерной базы данных называется подключаемой базой данных (Pluggable Database – PDB). Архитектура Multitenat позволяет создать в Oracle Database 18с Express Edition одну CDB базу и до трех PDB баз. По умолчанию после установки Oracle 18c Express Edition создается одна CDB и одна PDB. Название автоматически созданной PDB после установки Oracle Database 18с Express Edition – XEPDB1. Ниже пошагово описывается процесс удаления подключаемой базы данных в Oracle Database 18c Express Edition, работающей на виртуальной машине под управлением операционной системы Oracle Linux. Нижеописанные шаги также будут работать с Oracle Database 18c Express Edition, установленной на операционную систему Windows. Удаление pluggable database может понадобиться для самых различных целей. Например, после завершения работ на тестовом сервере или в среде разработки возникает необходимость их удаления для освобождения ресурсов компьютера/сервера (процессорного времени, дискового пространства, оперативной памяти и т.п.) или выполняется удаление для пересоздания pluggable database.
Удаление PDB.
Для удаления рабочей PDB необходимо выполнить следующие три шага:
Шаг 1. Подключиться к CDB под пользователем sys (sys/пароль пользователя sys).
[oracle@dushanbe ~]$ sqlplus sys/sys as sysdba SQL*Plus: Release 18.0.0.0.0 - Production on Mon Apr 19 15:44:52 2021 Version 18.4.0.0.0 Copyright (c) 1982, 2018, Oracle. All rights reserved. Connected to: Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production Version 18.4.0.0.0
Шаг 2. Проверить список имеющихся подключаемых баз данных (PDB) и их статусы:
SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED
------- --------- ---------- -----------2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
4 MSU READ WRITE NO
5 TTU READ WRITE NO
Можно увидеть, что кроме PDB XEPDB1 открыты и работают еще две PDB (MSU и TTU) в режиме чтения и записи данных (Open mode – read write). В данном примере будет удалена PDB TTU. Для удаления надо перевести PDB TTU в режим монтирования (mount). В режиме mount нельзя вносить изменения в объекты и база становится доступной только для администраторов.
SQL> alter pluggable database TTU close; Pluggable database altered.
Еще раз проверяется статус подключаемых баз данных. Результат показывает, что PDB TTU теперь работает в режиме монтирования (mounted):
SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED
------- --------- ---------- -----------2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
4 MSU READ WRITE NO
5 TTU
MOUNTEDNO
Шаг 3. Удаление PDB TTU с помощью команды drop pluggable database.
В команде drop pluggable database можно задать две опции, связанные с файлами базы данных:
- keep datafiles (отвечают за сохранение файлов данных).
- including datafiles (отвечают за удаление файлов данных).
Для использования опции keep datafiles, PDB должна быть отключена (unplugged).
Для использования опции including datafiles, PDB должна быть в режиме монтирования (mounted) или отключена (unplugged).
Keep datafiles надо указывать в тех случаях, когда необходимо сохранить файлы данных удаляемой PDB после того, как она будет удалена. Временные файлы для PDB удалятся по умолчанию, по причине ненадобности. Сохранять файлы данных может быть полезно в ситуациях, когда PDB отключают от одной CDB и подключают к другой, при условии, что обе CDB делят устройства хранения данных. Если не указать опцию для команды drop pluggable database, то по умолчанию принимается опция keep datafiles. Including datafiles надо указывать в тех случаях, когда необходимо удалить файлы данных, ассоциируемые с конкретной PDB. Временные файлы для данной PDB также будут удалены.
Ниже удаление PDB TTU выполняется с опцией including datafiles:
SQL> drop pluggable database TTU including datafiles; Pluggable database dropped.
Проверяются имеющиеся базы данных PDB:
SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED
------- --------- ---------- -----------2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
4 MSU READ WRITE NO
Результат команды показывает, что PDB TTU отсутствует в списке доступных и рабочих PDB.
На этом завершается процедура удаления Pluggable Database в Oracle Database 18c Express Edition.