1 / 36

Администрирование информационных систем

Администрирование информационных систем. Лекция 5. СУБД ORACLE. СУБД ORACLE. Таблица (отношение) S_CUSTOMER). SALES_ ID NAME PHONE REP_ID 201 Unisports 55-2066101 12 202 Simms Atheletics 81-20101 14 203 Delhi Sports 91-10351 14 204 Womansport 1-206-104-0103 11 .

sunila
Download Presentation

Администрирование информационных систем

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Администрирование информационных систем Лекция 5. СУБД ORACLE

  2. СУБД ORACLE Таблица (отношение) S_CUSTOMER) SALES_ ID NAME PHONE REP_ID 201 Unisports 55-2066101 12 202 Simms Atheletics 81-20101 14 203 Delhi Sports 91-10351 14 204 Womansport 1-206-104-0103 11 Строка (кортеж) Столбец (атрибут)

  3. СУБД ORACLE Имя таблицы: S_CUSTOMER Имя таблицы: S_EMP SALES_ ID NAME PHONE REP_ID 201 Unisports 55-2066101 12 202 Simms Atheletics 81-20101 14 203 Delhi Sports 91-10351 14 204 Womansport 1-206-104-0103 11 ID LAST_NAME FIRST_NAME 10 Havel Marta 11 Magee Colin 12 Giljum Henry 14 Nguyen Mai Главный ключ Внешний ключ Главный ключ

  4. СУБД ORACLE СУБД Oracle является признанным лидером на рынке реляционных СУБД. Многие новшества в области реляционных СУБД впервые появились и стали стандартом де-факто благодаря продуктам компании Oracle. Поддержка многоплатформенности (существуют версии данной СУБД для различных реализаций UNIX, Windows NT, Netware. OS/2, AS/400, MVS) позволяет сохранить существующие БД, продолжить использование уже имеющихся программных разработок, обеспечивая их масштабируемость и приобретенный опыт администрирования при переходе с одной платформы на другую (например, при увеличении объемов хранимой и обрабатываемой информации).

  5. СУБД ORACLE • Программные компоненты в составе СУБД Oracle • На верхнем уровне рассмотрения все программные компоненты можно отнести к одной из следующих частей: • Серверная часть СУБД (далее «сервер») — ведет обработку запросов и управляет файлами БД. • Клиентская часть СУБД (далее «клиент») - выдает запросы серверу, используя язык SQL. • ПО промежуточного уровня — осуществляет взаимодействие клиента и сервера.

  6. СУБД ORACLE Программные компоненты в составе СУБД Oracle Сервер Программные компоненты серверной части СУБД Oracle называются экземпляром БД. Экземпляр БД обслуживает одну связанную с ним БД Oracle. Экземпляр БД характеризуется уникальным идентификатором (System IDentifier SID) и состоит из набора процессов и связанных с ними структур данных в памяти ВУ.

  7. СУБД ORACLE Программные компоненты в составе СУБД Oracle Сервер Процессы переднего плана (Foreground Processes) - непосредственно занимаются обработкой клиентских запросов, находящихся в очереди запросов. Результаты обработки запросов размешаются в очереди ответов. Количество процессов переднего плана регулируется системой автоматически в зависимости от размера очереди запросов.

  8. СУБД ORACLE Программные компоненты в составе СУБД Oracle Сервер Теневые процессы (Background Processes). Каждый теневой процесс обслуживает определенный набор задач: 1) Процесс записи в базу данных (DBWR) - отвечает за запись модифицированных данных из буферов данных в файлы данных. Периодически активизирует процесс СКРТ. 2) Процесс контрольной точки (СКРТ) - обеспечивает явное сохранение данных из кэш-буферов в файлы данных. Регистрирует событие контрольной точки в журнале транзакций, которая указывает, сколько данных журнала транзакций нужно применить для восстановления при сбоях.

  9. СУБД ORACLE Программные компоненты в составе СУБД Oracle Сервер 3) Процесс записи в журнал транзакций (LWR) — отвечает за запись информации из буферов журнальных файлов в файлы журналирования транзакций. 4) Процесс оперативного архивирования (ARCH) — необязательный процесс (выполняется, если параметр ARCHIVELOG экземпляра БД имеет значение TRUE), который отвечает за своевременное создание резервных копий файлов журнальных групп. 5) Системный монитор (SMON) — управляет распределением памяти на диске при выполнении транзакций.

  10. СУБД ORACLE Программные компоненты в составе СУБД Oracle Сервер 6) Монитор процессов (PMON) — обеспечивает корректное завершение «зависших» диспетчеров сессий: освобождает память, отменяет незавершенную транзакцию и связанные с ней блокировки. 7) Диспетчеры сессий (Dnnn, где nnn — целое число) - обеспечивают управление информацией, связанной с конкретным сеансом работы пользователя, в том числе постановка клиентских запросов в очередь для обработки и возвращение результатов клиентам из очереди ответов.

  11. СУБД ORACLE Программные компоненты в составе СУБД Oracle Сервер Глобальная системная область (System Global Area SGA) — область кэш-буферов для работы экземпляра БД. В SGA размешаются следующие кэш-буферы: а)кэш-буферы данных - в них размешаются данные из файлов данных и происходит предварительное изменение этих данных в ходе выполнения транзакций; б)разделяемый пул (Shared Pool) — содержат элементы словаря БД. а также планы выполнения процедур и запросов (сценарии выполнения, созданные оптимизатором запросов); в)кэш-буферы журнальных файлов — накапливают информацию о происходящих в системе транзакциях для записи в журнал транзакций.

  12. СУБД ORACLE Программные компоненты в составе СУБД Oracle Клиент Клиентом СУБД Oracle является любое программное обеспечение, взаимодействующее с сервером Oracle посредством выдачи запросов на языке SQL (например, ПО SQL*Plus), передаваемых по сети с помощью ПО SQL*Net. Клиентское ПО состоит из набора программных файлов (для платформы Windows 9x/NT это файлы с расширением ЕХЕ и DLL).

  13. СУБД ORACLE Программные компоненты в составе СУБД Oracle ПО промежуточного уровня ПО SQL*Net обеспечивает прозрачный, не зависящий от типа протокола транспортного уровня, доступ клиентской части СУБД к услугам транспортного протокола, установленного на ВУ, а также возможность предоставлять серверную часть СУБД Oracle для совместного использования с рабочих станций с установленной клиентской частью. На сервере ПО SQL*Net представлено прослушивающим сеть процессом LISTENER, а на клиенте — набором файлов SQL*NET Client. В состав SQL*Net входят также адаптеры протоколов транспортного уровня, обеспечивающие упаковку запросов в сообщения соответствующего протокола транспортного уровня.

  14. СУБД ORACLE Для взаимодействия клиента и сервера используется спецификация для прозрачного именования ресурсов (Transparent Network Specification TNS) сети на основе СУБД Oracle. TNS-идентификация ресурсов сети обеспечивается либо с помощью конфигурационных файлов SQL*Net, либо с помощью сервера имен (Oracle Names Server). Клиент знает только TNS-имя сервера Oracle, за которым скрыто физическое местоположение сервера и процесса Listener на компьютере-сервере в терминах того или иного транспортного протокола.

  15. СУБД ORACLE Пример: ORAMX. world = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = TCP_COM. world) (PROTOCOL = TCP) (Host = 212.192.96.98) (Port =1526) ) ) (CONNECT_DATA = (SID = TSU) (GLOBAL_NAME = ORAMX.world) ) )

  16. СУБД ORACLE Логическая структура БД Oracle На верхнем уровне логической организации БД Oracle находится пространство таблиц. Пространство таблиц(Tablespace) служит базовым пространством для размещения объектов схемы (таблиц и т. д.). Пространство таблиц может находиться либо в доступном режиме (online), либо в автономном (offline). Рекомендуется создавать отдельные пространства таблиц для каждого приложения, работающего с СУБД (это обеспечивает определенный уровень независимости приложений друг от друга), а также для целей повышения производительности, так как если файлы разных пространств таблиц размещаются на разных физических дисках, то доступ к информации осуществляется быстрее.

  17. СУБД ORACLE Логическая структура БД Oracle Каждый создаваемый в БД объект (таблица, индекс, хранимая процедура) принадлежит определенной схеме. Схема неявно создается при регистрации пользователя и выполняет функции контейнера для объектов, создаваемых пользователем. При регистрации пользователя указывается, в границах какого пространства таблиц будут создаваться объекты его схемы. Схему можно сравнить с каталогом файловой системы.

  18. СУБД ORACLE Логическая структура БД Oracle К объектам схемы (Schema Objects) относятся: Таблицы(Tables) — основная единица хранения данных в Oracle. Данные хранятся в записях или строках. Все строки таблицы имеют одинаковый формат, определяющийся при создании таблицы. Представления(Views) — задаваемый пользователем вид данных. Представляет собой хранимый запрос к одной и более таблицам. С видом, в общем случае, можно работать как с обычной таблицей, т. е. выполнять операции select, insert, update и т. п. При этом изменения в виде приводят к изменениям со связанными таблицами.

  19. СУБД ORACLE Логическая структура БД Oracle К объектам схемы (Schema Objects) относятся: Индексы(Indexes) — служебные структуры, которые используются для оптимизации работы системы по обработке запросов. Создаются неявно при определении полей таблиц как ключевых или явно. Все изменения в таблицах мгновенно отражаются в индексах, этот процесс прозрачен для пользователей. Кластеры(Clusters) — структуры для оптимизации доступа к нескольким связанным таблицам, часто использующимся совместно в запросах.

  20. СУБД ORACLE Логическая структура БД Oracle К объектам схемы (Schema Objects) относятся: Последовательности(Sequences) - для автоматической генерации значений ключевых полей. Хранимые процедуры(Stored Procedures). Пакеты(Packages), Триггеры(Triggers) - программные элементы БД, обеспечивающие обработку данных на сервере.

  21. СУБД ORACLE Логическая структура БД Oracle К объектам схемы (Schema Objects) относятся: Синонимы(Synonyms) — альтернативные названия таблиц, видов, последовательностей и программных объектов для обеспечения прозрачного управляемого доступа к объектам различных схем (ср. Объекты типа Синоним в NDS). Связи с БД(Database Links) — описывают пути к другим БД, используются для выполнения распределенных транзакций.

  22. СУБД ORACLE Дополнительными объектами схемы являются сегменты отката(Rollback Segments) транзакций. Сегменты отката используются для временного хранения старых значений данных, обновляемых транзакцией, включающей операции удаления или обновления строк. Если пользователь отменяет транзакцию, то Oracle считывает присвоенный транзакции сегмент отката и возвращает измененные транзакцией строки в исходное состояние. Сегменты отката могут храниться как в обычном пространстве таблиц, так и в специально выделенном для этих целей пространстве.

  23. СУБД ORACLE Архитектура СУБД Oracle SMON SNPn LCKn RECO Snnn Dnnn Pnnn SGA PMON Буфер журналов Разделяемый пул Кэш буферов БД CKPT DBWR ARCH LGWR Серверные процессы Процессы пользователей Файлы данных Файлы журналов Управляющие файлы

  24. СУБД ORACLE Физическая структура БД Oracle СУБД Oracle не использует напрямую дисковое пространство для хранения данных. Вместо этого система использует файлы, внутри которых и размещаются все данные. Oracle использует несколько типов файлов для хранения собственно данных и служебной информации: Файлы данных(Data Files). В таких файлах размешаются пространства таблиц (пространство таблиц размешается в одном и более файлах). По мере надобности пространству таблиц могут быть выделены (в том числе и автоматически) дополнительные файлы на диске. Однако изменить размер уже существующего файла невозможно.

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

  26. СУБД ORACLE Файлы оперативного журнала Журнальный файл 1 Журнальный файл 2 Журнальный файл 3 Группа 1 Группа 2 Группа 3 Файл А Файл А Файл А Диск 1 Диск 2 Файл Б Файл Б Файл Б

  27. СУБД ORACLE Физическая структура БД Oracle Пространство таблиц, размещаемое в одном и более файлах данных, хранит объекты схемы в блоках данных(Data Blocks). Несколько подряд идущих блоков объединяются в отрезки(Extents), которые используются для резервирования места в пространстве таблиц под определенный объект схемы (с возможностью увеличения занимаемого объема путем выделения новых отрезков для хранения объектов схемы). Все отрезки некоторого объекта объединяются в сегмент хранения объекта(Object Storage Segment). Размер сегмента динамически меняется по мере надобности и управляется параметрами инициализации сегмента при создании объекта.

  28. СУБД ORACLE Архитектура внешней памяти База данных Экземпляр Табличное пространство Сегмент данных индекса кластера Уровень ОС отката временный кэша Логический диск Экстент Файл выделенный свободный Блок БД Блок ФС Уровень БД

  29. СУБД ORACLE Физическая структура БД Oracle При создании элементов логической структуры БД можно явно управлять параметрами физической организации БД. Например, при создании объекта Таблица можно указать: пространство таблиц для размещения таблицы; начальный размер сегмента хранения таблицы: —размер отрезков (в блоках данных), выделяемых при увеличении размеров таблицы; —максимальное количество отрезков в сегменте хранения.

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

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

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

  33. СУБД ORACLE Запуск БД OPEN STARTUP Все файлы открыты, пользователи могут работать. MOUNT Открыт управляющий Файл. NOMOUNT Экземпляр Запущен. Для запуска БД в обычном режиме необходимо запустить утилиту Server Manager, подключиться как пользователь INTERNAL и выполнить команду STARTUP.

  34. СУБД ORACLE • Завершение работы с БД • Закрытие БД — сброс всех изменений в кэш-памяти на диск, а также закрытие всех активных соединений с сервером и закрытие активных табличных пространств. • Размонтирование БД -предполагает закрытие файлов управления. • Выгрузка из памяти экземпляра БД- заключается в освобождении памяти от SGA и теневых процессов и последующей выгрузке основного процесса. • Для завершения работы БД в обычном режиме необходимо запустить утилиту Server Manager, подключиться как пользователь INTERNAL и выполнить команду SHUTDOWN.

  35. СУБД ORACLE NORMAL SHUTDOWN Запрещены новые соединения. Ожидание окончания работы пользователей. Не требуется восстановление экземпляра. Выполняется по умолчанию. IMMEDIATE Откат незавершенных транзакций. Закрытие и размонтирование БД. Не требует восстановление экземпляра. ABORT Нет отката транзакций. Нет закрытия и размонтирования БД. Останавливает экземпляр. Требуется восстановление экземпляра (выполняется автоматически).

  36. СУБД ORACLE ВОПРОСЫ?

More Related