Этот курс представляет методологию, используемую для увеличения производительности сервера Oracle9i. Слушатели изучают разнообразные средства и методы диагностики, необходимые для обнаружения и устранения типичных проблем производительности, возникающих при эксплуатации базы данных Oracle. Курс подробно рассматривает вопросы настройки экземпляра и базы данных Oracle, такие как настройка использования памяти, диагностика конкуренции за ресурсы, настройка ввода-вывода и т.п. Слушатели также получают знания, необходимые для настройки приложений и SQL-операторов. Курс включает практические занятия, закрепляющие полученные знания и навыки.
Слушатели
- Сотрудники служб технической поддержки
- Системные администраторы
- Администраторы баз данных
Предварительная подготовка
Курс Oracle 9i DBA Fundamentals I, знакомство с SQL и PL/SQL программированием и опыт работы с основными объектами схемы Oracle 9i (таблицами, представлениями, последовательностями, процедурами, синонимами, функциями и пакетами).
Содержание
Обзор настройки производительности в Oracle 9i
- Вопросы настройки
- Этапы настройки
- Цели настройки
- Общие проблемы производительности
- Настройки в ходе разработки
- Последствия общих проблем производительности
- Сбор базовой статистики
- Шаги настройки в ходе эксплуатации
- Методология настройки сервера базы данных
- Выбор между производительностью и надежностью
Инструменты диагностики и настройки
- Сопровождение файла alert. log
- Настройка с использованием файла alert. log
- Файлы трассировки фоновых процессов
- Пользовательские трассировочные файлы
- Представления, утилиты и инструменты
- Представления словаря и специальные представления
- Динамические представления поиска неисправностей и производительности
- Вопросы диагностики и настройки
- Сбор системных статистик
- Сбор статистик, относящихся к сеансу
- События ожидания Oracle
- Представление V$EVENT_MAME
- Представления, содержащие статистики
- Представление V$ SYSTEM_EVENT
- Представление V$SESSION_EVENT
- Представление V$SESSION_WAIT
- STATSPACK
- Выходные данные пакета STATSPACK
- Инструменты, разрабатываемые АБД
- Консоль Enterprise Manager
- Performance Manager
- Обзор методологии настройки с помощью Oracle Expert
- Настройка с использованием Oracle Expert
- Утилиты UTLBSTAT и UTLESTAT
- Уровень сбора статистики
Конфигурирование базы данных и проблемы ввода-вывода
- Процессы и файлы Oracle
- Рекомендации по производительности
- Распределение файлов между устройствами
- Использование табличных пространств
- Диагностические средства для проверки статистик ввода-вывода
- Performance Manager: статистики ввода-вывода
- Статистики ввода-вывода
- Расщепление файлов
- Настройка операций полного просмотра таблиц
- Статистики полного просмотра таблиц
- Мониторинг операций полного просмотра таблиц
- Контрольные точки
- Performance Manager: ввод-вывод
- Регулирование контрольной точки
- Определение и мониторинг контрольной точки быстрого старта
- Журнальные группы и их элементы
- Конфигурация оперативных журнальных файлов
- Конфигурация архивных журнальных файлов
- Диагностические средства
- Увеличение производительности архивирования
Задание размера разделяемого пула
- Системная глобальная область
- Разделяемый пул
- Библиотечный кэш
- Важные защелки на разделяемый пул
- Защелки разделяемого пула и библиотечного кэша
- Настройка библиотечного кэша
- Терминология
- Диагностические средства для настройки библиотечного кэша
- Разделяются ли курсоры
- Перегрузки библиотечного кэша: рекомендации
- Недействительные объекты
- Задание размера библиотечного кэша
- Наблюдение за разделяемым пулом
- OEM Shared Pool Size Advisor
- Кэширование планов выполнения
- Представление, содержащее информацию о планах выполнения,
- помещенных в кэш
- Использование представления v$SQL о планах выполнения, помещенных в кэш
- Выделение глобального пространства
- Потребности в большой памяти
- Настройка резервного пространства разделяемого пула
- Закрепление больших объектов
- Анонимные блоки PL/SQL
- Прочие параметры, влияющие на библиотечный кэш
- Настройка кэша словаря данных
- Диагностические средства для настройки кэша словаря данных
- Измерение статистик кэша словаря данных
- Настройка кэша словаря данных
- Рекомендации по уменьшению неудач кэша словаря данных
- Performance Manager: статистики разделяемого пула
- UGA и разделяемый сервер Oracle
- Установка размера глобальной области пользователя
- Большой пул
Задание размера кэша буферов
- Обзор
- Параметры, задающие размеры кэшей буферов
- Возможность динамического изменения SGA
- Представление, поддерживающее режим выработки рекомендаций для буферного кэша
- Использование представления V"$DB_CACHE_ATJVICE
- Использование Buffer Cache Advisory
- Сопровождение кэша буферов базы данных
- Динамические параметры, определяющие размеры кэшей буферов
- Пример увеличения размера компоненты SGA
- Нерекомендуемые параметры буферных кэшей
- Инструментальные средства диагностики
- Использование представления V$DB_CACHE_ADVICE
- Performance Manager
- Цели и способы настройки
- Показатели производительности буферного кэша
- Измерение коэффициента удач кэша
- Рекомендации по использованию коэффициента удач кэша
- Коэффициента удач буферного кэша не полностью определяет эффективность
- Увеличение размера кэша
- Использование нескольких буферных пулов
- Определение нескольких буферных пулов
- Использование нескольких буферных пулов
- Удерживающий буферный пул
- Рециклирующий буферный пул
- Вычисление коэффициентов удач буферных пулов
- Определение сегментов-кандидатов для размещения в буферных пупах
- Представления словаря данных, содержащие сведения о буферных пулах
- Кэширование таблиц
- Автоматическое управление свободным пространством
- Списки свободных блоков
- Диагностика конкуренции за список свободных блоков
- Устранение конкуренции за список свободных блоков
- Подчиненные процессы ввода-вывода
- Настройка ввода-вывода DBWn
Динамическое изменение памяти экземпляра
- Возможность динамического изменения SGA
- Единица выделения памяти для динамической SGA
- Гранула
- Выделение гранул при старте
- Добавление гранул к компонентам
- Динамические параметры, определяющие размеры кэшей буферов
- Пример увеличения размера компоненты SGA
Задание размера других структур SGA
- Журнальный буфер
- Установка размера журнального буфера
- Диагностика неэффективности журнального буфера
- Использование динамических представлений для анализа эффективности журнального буфера
- Performance Manager
- Рекомендации по настройке журнального буфера
- Сокращение операций журналирования
- Мониторинг памяти для Java-пула
- Установка размера компонентов SGA, используемых Java
Настройка разделяемого сервера Oracle
- Обзор
- Основные характеристики разделяемого сервера Oracle
- Мониторинг диспетчерских процессов
- Мониторинг разделяемых серверных процессов
- Мониторинг работы процесса
- Разделяемые серверные процессы и использование памяти
- Выявление проблем
- Получение информации из словаря
Оптимизация операции сортировки
- Новые параметры областей сортировок
- Выполнение сортировки
- Управление PGA
- Группы рабочих областей и процент попаданий в кэш PGA
- Определение загрузки PGA
- Другие представления с данными о рабочих областях
- Запрос к V$PGA__TARGET_ADVICE
- Анализ V$PGA_TARGET__ADVICE
- Результат работы PGA Sizing Advisor из OEM
- Выполнение сортировки
- Область сортировки и параметры
- Настройка сортировок
- Процесс сортировки и временное пространство
- Сегменты временного табличного пространства
- Операции, требующие сортировки
- Уменьшение количества сортировок
- Инструментальные средства диагностики
- Диагностика и рекомендации
- Performance Manager: сортировки
- Мониторинг временных табличных пространств
- Конфигурация временного табличного пространства
Настройка сегментов отмены
- Автоматическое управление информацией отмены в Огасlе9i
- Табличное пространство для автоматического управления информацией отмены
- Изменение табличного пространства типа Undo
- Переключение табличных пространств типа Undo
- Удаление табличного пространства типа Undo
- Установка параметра UNDO_RETENTION
- Другие параметры автоматического управление информацией отмены
- Мониторинг автоматического управление информацией отмены
- Использование представления V$UNDOSTAT
- Performance Manager; Rollback/Undo
- Использование сегментов отката
- Функционирование сегментов отката
- Функционирование заголовка сегмента отката
- Расширение сегментов отката
- Настройка вручную сопровождаемых сегментов отката
- Инструментальные средства диагностики
- Диагностика конкуренции за заголовки вручную сопровождаемых сегментов отката
- Рекомендации: количество сегментов отката (СО), сопровождаемых вручную
- Рекомендации: размеры сегментов отката (СО), сопровождаемых вручную
- Оценка объема данных для отката
- Использование транзакцией меньшего пространства отката
- Использование меньшего пространства отката
- Возможные проблемы, возникающие из-за небольших сегментов отката
Настройка команд SQL
- Обзор
- Режимы оптимизатора
- Установка режимов оптимизатора
- Использование подсказок в команде SQL
- Стабильность плана для оптимизатора
- Эквивалентность планов
- Создание хранимых каркасных планов
- Использование хранимых каркасных планов
- Редактирование хранимых каркасных планов
- Сопровождение хранимых каркасных планов
- Enterprise Manager: сопровождение хранимых каркасных планов
- Обзор инструментальных средств диагностики
- Сведения о командах SQL в отчете утилиты STATSPACK
- Performance Manager: выбранный SQL
- Команда EXPLAIN PLAN
- Использование SQL Trace и TKPROF
- Включение и выключение SQL Trace
- Форматирование файла трассировки с помощью TKPROF
- Статистики TKPROF
- SQLPlus AUTOTRACE
Управление статистикой
- Управление генерацией статистических данных
- Статистики для таблицы
- Сбор статистики на уровне сегментов
- Использование динамической выборки
- Включение динамической выборки
- Индексные статистики
- Мастер настройки индексов
- Статистики столбцов
- Гистограммы
- Генерация статистик для гистограммы
- Сбор приблизительных статистических данных
- Автоматический сбор статистических данных
- Стоимостная модель оптимизатора
- Сбор системных статистик
- Пример сбора системных статистик
- Копирование статистик из одной базы данных в другую
- Пример копирования статистик
Эффективное использование блоков Oracle
- Иерархия пространства в базе данных
- Выделение экстентов
- Предотвращение динамического выделения пространства
- Локальное управление выделением экстентов
- Большие экстенты: за и против
- Отметка максимального заполнения
- Статистики таблиц
- Пакет DBMS_SPACE
- Сжатие сегментов данных
- Размер блока базы данных
- Параметр DB_BLOCK_SIZE
- Небольшой размер блока: за и против
- Блоки большого размера: за и против
- PCTFREE И PCTUSED
- Рекомендации по установке параметров PCTFREE и PCTUSED
- Мигрированные и сцепленные строки
- Обнаружение мигрированных и сцепленных строк
- Выявление мигрированных строк
- Устранение миграции строк
- Реорганизация индексов
- Мониторинг использования пространства в индексе
- Выбор между перестройкой и слиянием индекса
- Мониторинг использования индексов
- Выявление неиспользуемых индексов
Эффективное использование структур хранения данных
- Структуры хранения данных
- Выбор физической структуры
- Методы доступа к данным
- Кластеры
- Типы кластеров
- Ситуации, в которых полезны кластеры
- Методы секционирования
- Пример секционирования по диапазонам значений
- Хэш-секционирование: обзор
- Пример секционирование на основе списков
- Секция по умолчанию для секционирования по списку
- Смешанный метод секционирования: обзор
- Секционированные индексы: масштабируемый доступ
- Отсечение секций
- Соединение по секциям
- Статистики, собираемые для секционированных объектов
- Пример использования пакета DBMS_STATS
Настройка приложений
- Роль администратора базы данных
- Перемещение таблиц командой ALTER TABLE
- Оперативное переопределение таблицы
- Индексы в виде В-дерева
- Перестройка индексов
- Сжатые индексы
- Битовые индексы
- Создание и сопровождение битовых индексов
- Сравнение индексов в виде В-дерева и битовых индексов
- Реверсированный индекс
- Создание реверсированных индексов
- Enterprise Manager: управление индексами
- Индекс-таблицы
- Индекс-таблицы и обычные таблицы
- Создание индекс-таблиц
- Переполнение строк в индекс-таблице
- Представления словаря данных, содержащие сведения об индекс-таблицах
- Использование таблицы отображения
- Сопровождение таблицы отображения
- Команда ANALYZE
- Enterprise Manager: сбор статистик
- Системы OLTP
- Требования к системам OLTP
- Аспекты приложений OLTP
- Системы принятия решений (хранилища данных)
- Требования к хранилищам данных
- Аспекты приложений-хранилищ данных
- Гибридные системы
Использование материализованных представлений
- Материализованные представления
- Создание материализованных представлений
- Обновление данных материализованных представлений
- Материализованные представления: обновление вручную
- Многоуровневые MView
- Union All MView
- Перезапись запросов
- Материализованные представления и перезапись запросов: пример
- Разрешение перезаписи запросов и управление перезаписью
- Отключение перезаписи запросов: пример
- Перезапись запроса для Union All
- Пакет DBMS_MVIEW
Мониторинг и обнаружение конкуренции блокировок
- Механизм блокирования
- Два типа блокировок
- Блокировки DML
- Режимы блокирования таблицы
- Блокировки DML на уровне блока
- Блокировки DDL
- Возможные причины конкуренции блокировок
- Диагностические средства мониторинга блокировок
- Рекомендации по разрешению конкуренции
- Performance Manager: блокировки
- Взаимоблокировки
Настройка операционной системы и использование менеджера ресурсов
- Обзор менеджера ресурсов базы данных
- Понятия менеджера ресурсов базы данных
- Использование подпланов
- Методы распределения ресурсов
- План-прототип: SYSTEM_PLAN
- Администрирование с использованием менеджера ресурсов базы данных
- Enterprise Manager: менеджер ресурсов
- Предоставление привилегии менеджера ресурсов
- Создание объектов менеджера ресурсов базы данных
- Пул активных сеансов
- Механизм пула активных сеансов
- Параметры пула активных сеансов
- Настройка пула активных сеансов
- Максимальное расчетное время выполнения
- Автоматическое переключение группы потребителей
- Undo-квота
- Создание объектов менеджера ресурсов базы данных
- Приписка пользователей к группам потребителей
- Задание плана распределения ресурсов для экземпляра
- Смена группы потребителей во время сеанса
- Смена групп потребителей для сеансов
- Информация менеджера ресурсов базы данных
- Текущие установки менеджера ресурсов базы данных
- Рекомендации
Настройка операционной системы и использование менеджера ресурсов
- Настройка операционной системы
- Конфигурации систем
- Виртуальная и физическая память
- Подкачка страниц и свопирование
- Настройка памяти
- Настройка ввода-вывода
- Различные системные вызовы ввода-вывода
- Настройка ЦП
- Процесс и поток

