Описание Курса:
Курс Oracle PLSQL знакомит слушателей с языком PL/SQL и помогает им оценить преимущества этого мощного языка программирования.
Cлушатели научатся создавать блоки PL/SQL, которые могут быть использованы различными формами, отчётами и приложениями для обработки данных. Слушатели научатся также создавать анонимные блоки PL/SQL, и получат представление о хранимых процедурах и функциях. Они узнают, как объявлять переменные и обрабатывать исключения. Демонстрации наглядных примеров и практические работы укрепят знание основных концепций. Слушатели используют Oracle SQL Developer для разработки этих программных единиц. Как дополнительный инструментарий используются SQL*Plus и Jdeveloper.
Аудитория:

  • PL/SQL разработчики
  • Системные аналитики
  • Технические консультанты
  • Разработчики форм
  • Разработчики порталов

Предварительная подготовка:

  • Oracle Database 11g: Основы SQL I
  • Oracle Database 11g: Основы SQL II

Приобретаемые навыки:

  • Объявлять переменные PL/SQL
  • Работать с составными типами данных
  • Использовать программные конструкции PL/SQL и управлять потоком операций (циклы, управляющие структуры)
  • Работать с явными курсорами
  • Обрабатывать ошибки на стадии исполнения
  • Создавать хранимые процедуры и функции

Содержание курса:

  • Введение
  • Цели курса
  • План курса
  • Таблицы учебной схемы Персонал (Human Resources, HR)
  • Среда выполнения кода PL/SQL на сервере базы данных
  • Введение в SQL Developer
  • Введение в PL/SQL
  • Что такое PL/SQL
  • Преимущества подпрограмм PL/SQL
  • Обзор типов блоков PL/SQL
  • Преимущества PL/SQL
  • Обзор типов блоков PL/SQL
  • Создание и выполнение простого анонимного блока
  • Генерация вывода из блоков PL/SQL
  • Объявление идентификаторов в PL/SQL
  • Различные типы идентификаторов в подпрограммах PL/SQL
  • Использование раздела объявлений для определения идентификаторов
  • Хранение данных в переменных
  • Скалярные типы данных
  • Атрибут %TYPE
  • Связанные (bind) переменные
  • Использование последовательностей в выражениях PL/SQL
  • Написание исполняемых операторов
  • Описание основного синтаксиса блоков
  • Комментирование кода
  • Функции SQL в PL/SQL
  • Преобразование типов данных
  • Вложенные блоки
  • Операторы в PL/SQL
  • Взаимодействие с сервером базы данных Oracle
  • Включение операторов SELECT в PL/SQL для получения данных
  • Манипулирование данными на сервере при помощи PL/SQL
  • Концепции SQL-курсоров
  • Атрибуты SQL-курсоров для обратной связи с DML-операторами
  • Фиксация и откат транзакций
  • Написание управляющих структур
  • Условное управление с использованием оператора IF
  • Условное управление с использованием оператора CASE
  • Простой цикл LOOP
  • Цикл WHILE
  • Цикл FOR
  • Оператор CONTINUE
  • Работа с составными типами данных
  • Использование записей PL/SQL
  • Использование атрибута %ROWTYPE
  • Вставка и обновление при помощи записей PL/SQL
  • Ассоциативные таблицы INDEX BY и методы работы с ними
  • Ассоциативные таблицы INDEX BY с записями
  • Использование явных курсоров
  • Управление явным курсором
  • Определение курсора
  • Открытие курсора
  • Выборка данных из активного набора
  • Закрытие курсора
  • Курсорные циклы FOR с подзапросами
  • Атрибуты явного курсора
  • Использование предложений FOR UPDATE и WHERE CURRENT OF
  • Обработка исключений
  • Понимание исключений
  • Обработка исключений в PL/SQL
  • Перехват предопределённых ошибок сервера Oracle
  • Перехват не-предопределённых ошибок сервера Oracle
  • Перехват исключений, определяемых пользователями
  • Распространение исключений
  • Использование процедуры RAISE_APPLICATION_ERROR
  • Создание хранимых процедур и функций
  • Представление о хранимых процедурах и функциях
  • Различие между анонимными блоками и подпрограммами
  • Создание автономной процедуры
  • Создание автономной процедуры с параметром IN
  • Создание автономной функции
  • Вызов автономной процедуры и функции

Курс предназначен для разработчиков с базовыми знаниями SQL и PL/SQL. Прослушав курс, слушатели научатся разрабатывать, выполнять и сопровождать хранимые программные единицы PL/SQL, такие, как процедуры, функции, пакеты и триггеры базы данных. Слушатели также научатся сопровождать подпрограммы PL/SQL и триггеры и получат представление об использовании некоторых стандартных пакетов, поставляемых Oracle. Кроме того, слушатели получат представление об использовании динамического SQL, понимание модульного, многоуровневого подхода к проектированию программ на PL/SQL, описанию и использованию возможностей компилятора, управление зависимостями. В данном курсе слушатели будут использовать Oracle SQL Developer как основной инструмент для разработки кода. SQL*Plus предлагается как дополнительный инструментарий.

Аудитория:

  • Разработчики приложений, администраторы баз данных, системные аналитики, специалисты отделов тех. поддержки.
  • Требования к подготовке слушателей:
  • Знания в объеме курсов «Oracle Database 11g: SQL Fundamentals» и « Oracle Database 11g: PL/SQL Fundamentals». Необходимо иметь опыт работы с iSQL*Plus.


Содержание:
Прослушав курс, студенты научатся создавать блоки PL/SQL кода, которые могут использоваться различными приложениями по обработке данных. Студенты научатся создавать процедуры, функции, пакеты и триггеры базы данных. Для разработки программ используется SQL*Developer. Студенты также научатся управлять программными единицами PL/SQL и триггерами базы данных, обслуживать зависимости, пользоваться некоторыми стандартными пакетами, поставляемыми Oracle и узнают о дополнительных возможностях PL/SQL компилятора. Демонстрации и практические упражнения позволят закрепить основные концепции.

В этом курсе рассматриваются различные методы исследований, которые охватывают несколько уровней детализации выполнения базой данных Oracle операторов SQL. Слушатели изучают различные способы, при помощи которых осуществляется доступ к данным и которые имеют различную эффективность в зависимости от окружающей обстановки. Также изучаются имеющиеся у пользователей возможности, позволяющие убедиться в том, что оптимизатором выбран наилучший способ доступа к данным. В данном курсе освещены темы секционирования, изучаются преимущества, которые может дать использование подсказок оптимизатору, переменных связывания и различных типов индексов.

Слушатели изучают:

  • Как идентифицировать неэффективно выполняющиеся операторы SQL
  • Основные принципы работы оптимизатора запросов
  • Как осуществлять трассировку приложений
  • Мониторинг выполнения операторов SQL в режиме реального времени
  • Как интерпретировать планы выполнения

Цели курса:

  • Научиться идентифицировать проблемные операторы SQL
  • Выполнять модификацию операторов SQL с целью оптимизации их выполнения
  • Научиться выполнению трассировки приложений
  • Начать понимать, почему оптимизатор запросов принимает те или иные решения при выборе путей доступа к данным
  • Научиться интерпретировать планы выполнения
  • Изучить эффективное использование подсказок оптимизатору
  • Научиться создавать нагрузочные тесты

Круг слушателей:

  • Разработчики приложений
  • Разработчики хранилищ данных
  • Разработчики
  • Технические консультанты
  • Специалисты служб технической поддержки

Необходимая предварительная подготовка:

Программа курса Oracle Database 11g: SQL Tuning Workshop/Настройка приложений:

  • Изучение архитектуры базы данных Oracle
  • Обзор архитектуры сервера базы данных Oracle
  • Обзор структур оперативной памяти сервера базы данных Oracle
  • Роль фоновых процессов
  • Автоматическое управление разделяемой памятью
  • Автоматическое управление памятью выполняемых операторов SQL
  • Автоматическое управление памятью
  • Архитектура внешней памяти базы данных
  • Логические и физические структуры базы данных Oracle
  • Введение в процесс настройки операторов SQL
  • Причины неэффективного выполнения операторов SQL
  • Имеющиеся программные решения по отслеживанию текущей производительности
  • Обзор утилит, предназначенных для мониторинга и настройки производительности
  • Страницы производительности Enterprise Manager, предназначенные для настройки в ответ на снижение производительности
  • Настройка производительности с учетом разделения времени реакции на время потребления CPU и время ожидания
  • Масштабируемость и ее взаимосвязь с дизайном, реализацией и конфигурированием приложения
  • Наиболее распространенные ошибки, допускаемые при проектировании и программировании приложений
  • Методология упреждающей настройки производительности
  • Введение в оптимизатор запросов
  • Структурированный язык запросов (SQL)
  • Обзор представления оператора SQL, его реализации и выполнения
  • Синтаксический анализ оператора SQL: обзор
  • Для чего нужен оптимизатор?
  • Шаги оптимизации во время операции жесткого разбора (hard parse)
  • Оптимизатор по стоимости (Cost-Based Optimizer - CBO)
  • Контроль поведения оптимизатора
  • Функциональные возможности оптимизатора и их зависимость от выпуска базы данных Oracle
  • Типы операций доступа, выбираемые оптимизатором
  • Определение способов доступа к строкам
  • Основные структуры данных и пути доступа
  • Полный просмотр таблицы
  • Индексы: обзор
  • Использование индексов; влияние столбцов, для которых допустимы неопределенные значения (NULL)
  • Битовые индексы, составные и невидимые индексы
  • Рекомендации по использованию и управлению индексами
  • Кластеры
  • Интерпретация плана выполнения
  • Что такое план выполнения
  • Взаимосвязи между наиболее важными динамическими представлениями производительности
  • Автоматизированный репозиторий рабочей нагрузки AWR
  • Создание отчета о выполненных операторах SQL на основе данных AWR
  • Обзор мониторинга операторов SQL
  • Чтение более сложных планов выполнения
  • Повторный просмотр плана выполнения
  • Взгляд на то, что происходит по ту сторону плана выполнения (что по сути стоит за планом выполнения)
  • Учебный пример: преобразование типа "звезда"
  • Модели схемы данных типа "звезда" и "снежинка"
  • План выполнения без преобразования типа "звезда"
  • Получение строк из таблицы фактов с ее соединением с одной и всеми таблицами измерений
  • Соединение промежуточного результирующего набора строк с таблицами измерений
  • Использование битовых индексов соединений (Bitmap Join Indexes)
  • Статистики оптимизатора
  • Описание статистик оптимизатора и типы статистик
  • Обзор статистики по группе столбцов
  • Обзор статистик по выражению
  • Сбор системных статистик
  • Предпочтения статистик: обзор
  • Обзор динамической выборки, осуществляемой оптимизатором (Optimizer Dynamic Sampling)
  • Блокировка статистик
  • Использование переменных связывания (bind variables)
  • Разделение курсоров и различные значения литералов
  • Разделение курсоров и переменные связывания
  • Переменные связывания в SQL*Plus и Enterprise Manager
  • Усовершенствования в механизме разделения курсоров
  • Обзор адаптивного разделения курсоров
  • Взаимодействие с механизмом адаптивного разделения курсоров
  • Использование подсказок оптимизатору
  • Обзор подсказок оптимизатору
  • Типы подсказок оптимизатору
  • Указание подсказок в операторах SQL
  • Правила использования подсказок оптимизатору
  • Рекомендации по использованию подсказок
  • Категории подсказок оптимизатору
  • Подсказки, указывающие цели оптимизации и используемые подходы
  • Дополнительные подсказки оптимизатору
  • Трассировка приложения
  • Проблема сквозной трассировки приложения
  • Местоположение диагностических трассировочных файлов
  • Что такое служба (service)?
  • Использование служб совместно с пользовательскими приложениями
  • Трассировка собственного сеанса
  • Содержимое трассировочного файла, созданного при помощи средства SQL Trace
  • Форматирование трассировочных файлов SQL Trace: обзор
  • Запуск утилиты TKPROF
  • Автоматизация настройки операторов SQL
  • Автоматическая настройка операторов SQL
  • Проблемы, связанные с трассировкой приложений
  • Обзор консультанта по настройке операторов SQL (SQL Tuning Advisor)
  • Устаревшая или отсутствующая статистика объектов
  • Профилирование операторов SQL
  • Технологический процесс настройки плана выполнения оператора SQL и создание его профиля
  • Панель управления Database Control и консультант SQL Tuning Advisor
  • Приведение в действие выданных рекомендаций

Следующие рекомендуемые курсы:

В курсе "Oracle Database 11g: Передовые методы PL/SQL 1.0" изучаются современные возможности PL/SQL по разработке и отладке PL/SQL-программ, наиболее эффективно взаимодействующих с базой данных и другими приложениями. Слушатели научатся использовать все функциональные возможности курсоров, пакетов, больших объектов, коллекций и методов взаимодействия с другими приложениями. Рассматриваются вопросы написания оптимального кода, использования внешних подпрограмм, написанных на языках C и Java, применения механизма детального контроля доступа, а также защиты кода от SQL-внедрений.

После успешного прохождения курса слушатели должны будут уметь:

  • Писать код, взаимодействующий с другими приложениями и операционной системой
  • Создавать приложения, использующие коллекции
  • Применять механизм детального контроля доступа
  • Писать код, взаимодействующий с большими объектами(LOBs), и использовать SecureFile LOBs
  • Защищать код от sql-внедрений
  • Создавать оптимальные с точки зрения производительности программы.

Цели курса:

  • Настройка PL/SQL кода
  • Определение и типизация различных SQL-внедрений
  • Применение стандартов кодирования, обеспечивающих неуязвимость для SQL-внедрений
  • Создание подтипов на основе имеющихся типов для приложения
  • Создание и использование коллекций
  • Выполнение внешних программ на C из PL/SQL
  • Выполнение программ на Java из PL/SQL
  • Использование механизма детального контроля доступа
  • Создание больших объектов
  • Использование пакета DBMS_LOB для поддержки больших объектов
  • Использование SecureFile LOBs
  • Использование курсоров
  • Использование дедупликаци, сжатия и шифрования для SecureFile LOBs
  • Повышение эффективности использования памяти с помощью кэширования результирующих наборов
  • Реализация кэширования PL/SQL-функций
  • Профилирование PL/SQL-приложений.

Круг слушателей:

  • Разработчики
  • Разработчики приложений
  • Разработчики на языке PL/SQL

Необходимая предварительная подготовка:

  • Oracle Database 11g: Введение в SQL
  • Oracle Database 11g: Программирование на языке PL/SQL
  • Рекомендуемая предварительная подготовка:
  • Опыт работы с SQL и PL/SQL
  • Знание Oracle Database

Программа курса:

  • Обзор среды разработки
  • SQL Developer
  • SQL*Plus
  • Рекомендации по проектированию
  • Описание предопределённых типов данных
  • Создание подтипов на основе имеющихся в приложении типов
  • Проектирование курсоров
  • Использование курсорных переменных
  • Передача курсорных переменных как параметров программ
  • Сравнение курсоров и курсорных переменных
  • Использование коллекций
  • Обзор коллекций
  • Использование ассоциативных массивов
  • Использование вложенных таблиц
  • Использование массивов переменной длины
  • Написание PL/SQL программ, использующих коллекции
  • Эффективное использование коллекций
  • Вызов внешних процедур, написанных на других языках программирования
  • Вызов из PL/SQL процедур, написанных на языке C
  • Вызов из PL/SQL процедур, написанных на языке Java
  • Применение детального контроля доступа
  • Обзор детального контроля доступа
  • Описание методов детального контроля доступа
  • Описание контекста приложения
  • Создание контекста приложения
  • Применение контекста приложения
  • Процедуры пакета DBMS_RLS
  • Применение политики
  • Представления словаря данных, содержащие информацию о детальном контроле доступа
  • Работа с большими объектами
  • Описание больших объектов (LOBs)
  • Работа с внутренними LOBs
  • Описание BFILEs
  • Создание директорий для доступа к объектам BFILEs
  • Описание пакета DBMS_LOB
  • Удаление LOBs
  • Создание временных LOBs с помощью пакета DBMS_LOB
  • Администрирование SecureFile LOBs
  • Введение в SecureFile LOBs
  • Окружениедля SecureFile LOBs
  • Использование SecureFile LOBs для хранения документов
  • Преобразование BasicFile LOBs в SecureFile LOB формат
  • Проверка производительности SecureFile LOBs
  • Разрешение дедупликации и сжатия
  • Разрешение шифрования
  • Оптимизация производительности
  • Влияние компилятора
  • Настройка производительности кода PL/SQL
  • Управление автоматическим встраиванием подпрограмм ( intra unit inlining) оптимизатором
  • Идентификация проблем использования памяти и ее настройка
  • Увеличение производительности за счет SQL и PL/SQL кэширования
  • Кэширование результатов запроса при помощи Query Result Cache
  • Использование кэширования результирующего набора SQL-запроса
  • Кэширование PL/SQL-функций
  • Анализ кода PL/SQL
  • Использование встроенных пакетов Oracle и представлений словаря данных для получения информации о коде
  • Анализ определяемых пользователем идентификаторов с помощью управляемого компилятором инструментального средстваPL/Scope
  • Получение метаданных в XML или DDL виде при помощи пакета DBMS_METADATA , например, для для пересоздания объектов
  • Профилирование и трассировка кода PL/SQL
  • Трассировка выполнения кода
  • Профилирование программ на PL/SQL
  • Защита кода от SQL-внедрений
  • Описание SQL-внедрений
  • Уменьшение зон, уязвимых для SQL-внедрений
  • Использование DBMS_ASSERT
  • Создание неуязвимого для SQL-внедрений кода
  • Проверка кода на возможность SQL-внедрений.
  • Рекомендуемые курсы для дальнейшего обучения:
  • Oracle Database 11g: Настройка приложений

Название курса на русском языке: Сервер Oracle Database 11g: Основы администрирования, часть 1
Основная цель курса - дать администратору базы данных основные знания и навыки, необходимые для администрирования базы данных Oracle 11g. В ходе курса слушатели изучают, как устанавливается и управляется база данных Oracle 11g. Они получают концептуальное понимание архитектуры базы данных Oracle, изучают, как работают и взаимодействуют между собой ее компоненты. Слушатели узнают, как создаётся база данных, изучают средства эффективного управления компонентами базы данных, в том числе мониторинга производительности, обеспечения безопасности и выполнения резервирования и восстановления базы данных.

Курс предусматривает практические занятия.
Курс не включает рассмотрение следующих технологий:

  • (1) Enterprise Manager Grid Control
  • (2) Real Application Clusters
  • (3) Streams
  • (4) Data Guard.

После успешного прохождения курса слушатели должны будут уметь:

  • Устанавливать Oracle Grid Infrastructure
  • Управлять пользователями базы данных
  • Создавать и конфигурировать базу данных
  • Создавать и управлять структуры хранения
  • Администрировать базу данных Oracle
  • Выполнять резервирование и восстановление

Рассматриваемые вопросы:

  • Мониторинг производительности
  • Описание архитектуры базы данных
  • Установка Oracle Grid Infrastructure
  • Установка и конфигурация Oracle Database 11g
  • Конфигурирование Oracle Net
  • Мониторинг и администрирование данных отмены
  • Управление структурами хранения
  • Создание и управление учётными записями пользователей
  • выполнение основных задач резервирования и восстановления
  • Управление пользователями и схемами
  • Управление одновременным доступом

Круг слушателей:

  • Администраторы баз данных
  • Разработчики на Java
  • Специалисты служб технической поддержки
  • Технические консультанты
  • Технические администраторы

Необходимая предварительная подготовка:

Рекомендуемая предварительная подготовка:

Программа курса Oracle Database 11g: Administration Workshop I/Основы администрирования, часть 1:

  • Исследование архитектуры базы данных Oracle
  • Обзор архитектуры базы данных Oracle
  • Обзор архитектуры ASM
  • Архитектура процессов
  • Структуры памяти
  • Логические и физические структуры хранения
  • Компоненты хранения ASM
  • Установка программного обеспечения Oracle
  • Задачи администратора базы данных Oracle
  • Инструменты для администрирования базы данных Oracle
  • Установка: системные требования
  • Oracle Universal Installer (OUI)
  • Установка Oracle Grid Infrastructure
  • Установка Oracle Database Software
  • 'Тихая' установка
  • Создание базы данных Oracle
  • Планирование базы данных
  • Создание базы данных при помощи DBCA
  • Управление паролями
  • Создание шаблона базы данных
  • Использование DBCA для удаления базы данных
  • Управление экземпляром Oracle
  • Запуск и остановка базы данных Oracle и ее компонент
  • Использование Oracle Enterprise Manager
  • Доступ к базе данных при помощи SQL*Plus
  • Изменение параметров инициализации
  • Этапы запуска базы данных
  • Опции остановки базы данных
  • Просмотр alert.log
  • Доступ к динамическим представлениям производительности
  • Управление экземпляром ASM
  • Файл параметров инициализации экземпляра ASM
  • Запуск и остановка экземпляра ASM
  • o Управление дисковыми группами ASM
  • Конфигурация Oracle*Net
  • Использование Enterprise Manager для создания процесса прослушивания
  • Использование Oracle Restart для мониторинга процесса прослушивания
  • Использование tnsping для проверки доступности Oracle*Net
  • Использование разделяемых и выделенных серверных процессов
  • Управление структурами хранения данных
  • Структуры хранения
  • Как хранятся данные таблиц
  • Анатомия блока базы данных
  • Управление свободным и занятым местом в табличных пространствах
  • Табличные пространства в преконфигурированной базе данных
  • Операции над табличными пространствами
  • Файлы, управляемые Oracle (OMF)
  • Управление безопасностью пользователей
  • Учётные записи пользователей
  • Предопределённые административные учётные записи
  • Достоинства использования ролей
  • Предопределённые роли
  • Внедрение профилей
  • Одновременный доступ
  • Одновременный доступ к данным
  • Механизм блокировок
  • Разрешение конфликтов блокировок
  • Взаимоблокировки
  • Управление данными отмены
  • Изменение данных
  • Транзакции и информация отмены
  • Информация отмены в сравнении с журнальной информацией
  • Конфигурирование удержания информации в сегментах отмены
  • Аудит базы данных
  • Описание основных требований по безопасности
  • Включение стандартного аудита базы данных
  • Опции аудита
  • Просмотр журнала аудита
  • Сопровождение журнала аудита
  • Сопровождение базы данных
  • Управление статистикой оптимизатора
  • Управление Automatic Workload Repository (AWR)
  • Использование Automatic Database Diagnostic Monitor (ADDM)
  • Структура консультантов базы данных
  • Установка порогов
  • Использование предупреждений, сгенерированных сервером
  • Использование автоматизированных заданий
  • Управление производительностью
  • Мониторинг производительности
  • Управление структурами памяти
  • Включение автоматического управления памятью (AMM)
  • Использование консультанта по разделяемой памяти
  • Использование консультантов по структурам памяти
  • Динамические статистики производительности
  • Представления для выявления неисправностей и настройки
  • Недействительные и непригодные объекты
  • Концепции резервирования и восстановления
  • Часть вашей работы
  • Сбой команды
  • Ошибка пользователя
  • Понимание восстановления экземпляра
  • Фазы восстановления экземпляра
  • Использование консультанта по MTTR
  • Сбой носителя
  • Архивные журнальные файлы
  • Выполнение резервирования базы данных
  • Обзор решений резервирования
  • Oracle Secure Backup
  • Резервирование, управляемое пользователем
  • Терминология
  • Recovery Manager (RMAN)
  • Настройка опций резервирования
  • Резервирование управляющего файла в файл трассировки
  • Мониторинг Flash Recovery Area
  • Выполнение восстановления базы данных
  • Открытие базы данных
  • Потеря управляющего файла
  • Потеря оперативного журнального файла
  • Консультант по восстановлению данных
  • Сбои данных
  • Вывод списка сбоев
  • Представления консультанта по восстановлению данных
  • Перемещение данных
  • Перемещение данных: основные понятия и архитектура
  • Создание и использование Directory
  • Использование SQL*Loader
  • Использование внешних таблиц
  • Архитектура Data Pump
  • Использование Data Pump для экспорта и импорта данных
  • Работа с технической поддержкой
  • Использование Enterprise Manager Support Workbench
  • Работа с Oracle Support
  • Создание сервис-запроса
  • Управление патчами