Физическая структура БД Oracle

СУБД Oracle не использует напрямую дисковое пространство для хранения данных. Вместо этого система использует файлы, внутри которых и размещаются все данные. Oracle использует несколько типов файлов для хранения собственно данных и служебной информации:

Файлы данных(Data Files). В таких файлах размешаются пространства таблиц (пространство таблиц размешается в одном и более файлах). По мере надобности пространству таблиц могут быть выделены (в том числе и автоматически) дополнительные файлы на диске. Однако изменить размер уже существующего файла невозможно.

Управляющие файлы(Control Files) - служат для хранения информации о физической структуре БД (имя БД. имена и расположение файлов данных и журнальных файлов). Все изменения в физической структуре (например, добавление нового пространства таблиц и связанного с ним файла) автоматически отражаются в управляющем файле.

Журнальные файлы(Redo Log Files) – служат для хранения информации о происходящих в системе изменениях (транзакциях). Допускается создание зеркальных журнальных файлов (Рисунок 10).

Пространство таблиц, размещаемое в одном и более файлах данных, хранит объекты схемы в блоках данных(Data Blocks). Несколько подряд идущих блоков объединяются в отрезки(Extents), которые используются для резервирования места в пространстве таблиц под определенный объект схемы (с возможностью увеличения занимаемого объема путем выделения новых отрезков для хранения объектов схемы).

Все отрезки некоторого объекта объединяются в сегмент хранения объекта(Object Storage Segment). Размер сегмента динамически меняется по мере надобности и управляется параметрами инициализации сегмента при создании объекта.

При создании элементов логической структуры БД можно явно управлять параметрами физической организации БД.

Например, при создании объекта Таблица можно указать:

1. пространство таблиц для размещения таблицы;

2. начальный размер сегмента хранения таблицы:

- размер отрезков (в блоках данных), выделяемых при увеличении размеров таблицы;

- максимальное количество отрезков в сегменте хранения.

Запуск БД в обычном режиме

Запуск БД Oracle в обычном режиме выполняется в три этапа:

1. Запуск экземпляра БД. В процессе запуска экземпляра Oracle основной процесс читает файл параметров ora%SID%.ORA (SID - значение системного идентификатора экземпляра БД). Далее. на основе значений параметров происходит выделение места под SGA и выполняется запуск теневых процессов.

2. Монтирование БД - это процесс связывания запушенного экземпляра с конкретной БД. После выполнения монтирования доступ к БД уже возможен, но только пользователю с правами администратора (с ролью DBA). В процессе монтирования экземпляр БД открывает указанный в файле параметров файл управления (параметр СОМ 1 ROL_FILES). На основе информации в этом файле выполняется проверка файлов данных. Затем открываются журнальные файлы, и, если необходимо, выполняется откат или обратное восстановление транзакций.

3. Открытие БД. Заключается в предоставлении БД для совместного использования. Открываются для доступа файлы данных, точнее становятся доступными (on-line) пространства таблиц, размешенные в этих файлах, и журнальные файлы. Табличные пространства, файлы которых недоступны, остаются неактивными (off-line).

Чтобы к БД могли обращаться клиенты с других ВУ, необходимо также, чтобы был запущен процесс Listener.

Запуск БД

Для запуска БД в обычном режиме необходимо запустить утилиту Server Manager, подключиться как пользователь INTERNAL и выполнить командуSTARTUP

Завершение работы с БД

1. Закрытие БД — сброс всех изменений в кэш-памяти на диск, а также закрытие всех активных соединений с сервером и закрытие активных табличных пространств.

2. Размонтирование БД - предполагает закрытие файлов управления.

3. Выгрузка из памяти экземпляра БД – заключается в освобождении памяти от SGA и теневых процессов и последующей выгрузке основного процесса.

Для завершения работы БД в обычном режиме необходимо запустить утилиту Server Manager, подключиться как пользователь INTERNAL и выполнить команду SHUTDOWN

Установка на сервере

Для установки серверной части СУБД Oracle необходимо запустить программу установки ORAINST. После ввода информации об используемом языке (English. Russian и т. д.) и указания каталога для установки (например, C:\ORANT) появится диалоговое окно Software Manager.

Для работы серверной части СУБД Oracle необходимо выбрать следующие программные компоненты:

- Oracle Server –собственно сервер Oracle, включающий программные файлы для создания основного и теневых процессов;

- SQL*Net Sender-серверная часть ПО SQL*Net;

- Адаптер транспортного протокола (например, TCP/IP Protocol Adapter) – драйвер для упаковки TNS-запросов в сообщения протокола транспортного уровня;

- System Support Files –файлы для взаимодействия СУБД с ОС;

- Oracle Server Manager –утилита администрирования, прежде всего предназначенная для запуска и завершения работы экземпляра БД.

Кроме того, можно выбрать дополнительные программные компоненты:

- Oracle Names Server –сервер TNS-именования ресурсов;

- Oracle Utilities (IMP/EXP/LOADER) – дополнительные утилиты для выполнения операций импорта, экспорта и пакетной загрузки информации в БД;

- Oracle Webserver – ПО для развертывания Web-сервера, интегрирующегося с СУБД Oracle;

- Replication Option, Distributed Option, Parallel Query Option –файлы поддержки дополнительных возможностей СУБД Oracle no распределенной обработке;

- ConText Option, SpacialData Option –файлы поддержки дополнительных типов данных СУБД Oracle.

После нажатия кнопки Install программа установки начнет копировать выбранные компоненты на ВУ. При установке компонентов на сервере выберите нужный тип протокола (будет установлен нужный адаптер SQL*NET).

Следующим этапом установки является создание файла конфигурации серверной части ПО SQL*Net (файл LISTENER. ORA). Для этого можно использовать утилиты SQL*Net Easy Configuration. Oracle Network Manager или обычный текстовый редактор.

Создание новой БД

Если в процессе установки начальная БД не была создана, то после установки программных компонент необходимо создать БД и связанный с ней экземпляр БД.

Для этого выполняются следующие действия:

- Создание файла параметров инициализации экземпляра БД Обычно это файл INIT%SID%.ORA, где %SID% - это SID экземпляра БД.

- Создание экземпляра БД (с ключом NOMOUNT).

- Запуск сценария для создания БД, включающего команду Create Database.

- Запуск сценария CATALOG.SQL — в результате будут созданы таблицы и представления словаря БД.

- Запуск сценария CATPROC.SQL — в результате будут созданы дополнительные таблицы и представления для обеспечения возможности создания хранимых процедур и триггеров.

Наши рекомендации