Введение в ORACLE
Учебный центр информационных технологий «Информатика»
Предмет изучения
-
Познакомить слушателей с особенностями СУБД ORACLE
-
Обучить навыкам создания основных объектов базы данных
-
Познакомить с написанием программных единиц на PL/SQL
Содержание лекции №1:
-
Краткие сведения о СУБД ORACLE
-
История создания и различные версии продукта
-
Клиентская и серверная часть и их назначение
-
Физический и логический уровень организации баз данных
Краткие сведения о СУБД ORACLE
-
Одна из первых реляционных СУБД
-
Первая коммерческая СУБД, поддерживающая язык SQL
-
Наиболее развитая реализация «Клиент/Сервер»
-
Сервер СУБД может располагаться на любой платформе
-
“Открытость”основная концепция развития продукта
Клиенты Oracle в России
История создания
-
1977 – Ларри Эллисон, Боб Майнер и Эд Оутс основали компанию Software Development Laboratories (SDL)
-
1979 – SDL сменила имя на Relational Software, Inc.(RSI) и выпустила СУБД Oracle
-
1982 – RSI принимает решение о переименовании в Oracle
Первые версии продукта
-
1979– Oracle v.2 Полная поддержка SQL
-
1983 – Oracle v.3 Атомарная завершённость транзакций
-
1984 – Oracle v.4 Реализована модель контроля доступа к базе данных
-
1985 – Oracle v.5 Введена архитектура клиент/сервер
-
1986– Oracle 5.1 Появилась поддержка распределённых запросов
-
1988 - Oracle v.6 Введены генераторы последовательностей, блокировка на уровне строк
-
1992 – Oracle v.7 PL/SQL стал средством описания процедур и триггеров, разделяемый SQL кэш на сервере и разделяемый пул процессов сервера, также было полностью реализованы декларативные ограничения референциальной целостности, были введены роли
-
1994 - Oracle v.7.1 Параллельное выполнение запросов, полная интеграция PL/SQL и SQL
-
1997 – Oracle v.8 Поддержаны элементы объектно-ориентированного проектирования и программирования, секционирование
-
1998– Oracle v.8i Release 1 Java-машина в СУБД, хранимые процедуры java/PL/SQL
-
1998– Oracle v.8i Release 2 встраиваемая XML обработка на стороне СУБД
-
2000– Oracle v.8i Release 3 поддержка DES шифрования и SSL для HTTP соединений
-
2001 – Oracle v.9i Release 1 механизм создания репликаций Oracle Streams, стало возможно переименование столбцов и ограничений целостности, технология RAC
-
2002 – Oracle v.9i Release 2 хранение объектов в XML
-
2004 – Oracle v.10g Release 1 поддержка grid вычислений, табличные пространства с межплатформенной переносимостью
-
2005 – Oracle v.10g Release 2 Сжатие в утилитах Data Pump
Последние версии продукта
-
2007 – Oracle v.11g Release 1 Генерация нового значения последовательности в SQL коде, автоматически расширяемый диапазон секционирования, отслеживание изменений объекта
-
2009 – Oracle v.11g Release 2 Подмена данных на лету
-
2013 – Oracle v.12c Возможность использования PL/SQL в SQL, использование последовательностей в качестве значений по умолчанию
Полезные ссылки:
-
http://www.oracle.com/us/downloads/index.html - для скачивания Oracle
-
http://docs.oracle.com/cd/E11882_01/index.htm - документация по Oracle
-
http://www.devart.com/ru/dbforge/oracle/studio/ - инструмент для разработки баз данных Oracle
-
http://tahiti.oracle.com/ - Описание нового функционала в Oracle с 9-й версии
Клиентская и серверная часть и их назначение
Серверная часть
Клиентская часть
Экземпляр базы данных
Клиентское приложение
SGA
Фоновые процессы
Клиент Oracle
База данных
Соединение с экземпляром базы данных
Пользовательский процесс
Пользовательский процесс
Shared
server
Listener
Диспетчер
Пользовательский процесс
Серверный процесс
Пользователь
SGA
SQL запрос
Соединение
Dedicated server
Пользовательская сессия – соединение пользователя с базой данных
Кластерная технология ORACLE
Сеть общего пользования
Собственная сеть кластера
Независимые компьютеры/
узлы кластера
Разделяемые устройства хранения
Особенности RAC
-
Oracle Clusterware производит мониторинг и управление кластерными базами данных и другими программными компонентами, обеспечивающими их функционал. При старте узла кластера Oracle Clusterware автоматически производит старт всех экземпляров СУБД Oracle, прослушивающих процессов (listeners) и служб
-
Automatic Storage Management обеспечивает высокопроизводительные операции дискового ввода-вывода и простоту в управлении файловой системой и дисками.
-
Использование приложением механизма быстрого оповещения приложения Fast Application Notification (FAN) позволяет ускорить реакцию приложения на сбои внутри кластера и улучшить качество распределения рабочей нагрузки между доступными вычислительными ресурсами.
-
Real Application Clusters обеспечивает для СУБД Oracle еще большую доступность - RAC исключает ситуацию, когда выход из строя сервера или его программного обеспечения приводит к выходу из строя всей системы в целом.
-
Real Application Clusters обеспечивает непрерывное обслуживание, как при сбоях, так и при выполнении запланированных сервисных работ.
-
Real Application Clusters обеспечивает непрерывное обслуживание, как при сбоях, так и при выполнении запланированных сервисных работ.
-
Oracle Real Application Clusters обладает инновационной технологией распределения нагрузок, которая обеспечивает наилучшую производительность приложений и их высокую доступность на заданной конфигурации
Физический и логический уровень организации базы данных
Логический
Физический
База данных
Схемы
Табличные пространства
Файлы данных
Сегменты
Экстенты
Блоки операционной системы
Блоки данных
Архитектура хранения данных
Оперативные файлы
журналов
повторного выполнения
Управляющие файлы
Файлы данных
Файлы резервного
копирования
Файл параметров
Архивные файлы
журналов
повторного выполнения
Файлы паролей
Alert log и трассировочные
файлы
Как хранятся таблицы
Колонки
Таблица А
Таблица Б
Строки
Сегмент
Сегмент
Таблица
Блоки
Экстент
Блок базы данных
Заголовок блока
Свободное пространство
Данные строки
В таблице DBA_SEGMENT S содержится информация о количестве блоков каждого сегмента базы данных и месторасположении этих блоков
Схемы
-
Схема (~пользователь)– это набор объектов различной логической структуры данных. Каждая схема принадлежит пользователю базы данных и имеет одинаковое с ним имя. Схема создаётся при создании пользователя. Каждый пользователь владеет одной схемой.
-
Профиль – Каждому пользователю соответствует профиль, который содержит информацию об ограничениях на использование вычислительных ресурсов и политике безопасности пароля доступа. Одному пользователю может быть назначен только один профиль.
-
Привилегия – это право выполнять конкретный тип предложений SQL, или право доступа к объекту другого пользователя. ORACLE имеет три вида привилегий: системные привилегии, объектные привилегии и ролевые привилегии. Каждая системная привилегия позволяет пользователю выполнять конкретную операцию в базе данных или определенный класс операций. Каждый тип объектов имеет различные привилегии, ассоциированные с ним.
-
Роль – совокупность объектных и системных привилегий. Каждому пользователю могут соответствовать несколько ролей