Создаем отчет Oracle AWR и просматриваем статистику производительности

Oracle AWR - инструмент сбора статистики и диагностики производительности баз данных Oracle 10g и старше, пришедшее на смену пакету perfstat в 9i. Начиная с 10-й версии в Oracle появился новый фоновый процесс - MMON, который и занимается сбором статистики. По умолчанию он создает snapshot (снимок состояния системы) и сохраняет информацию в табличном пространстве SYSAUX каждый час и хранит его в течение недели. Можно переопределить период сбора информации или принудительно собрать snapshot вручную.

-- Теперь будем собирать snapshot каждые 120 минут и хранить 14400 минут (10 дней)
BEGIN
  DBMS_WORKLOAD_REPOSITORY.modify_snapshot_settings(
    retention => 14400,
    INTERVAL  => 120);
END;
/
-- Соберём snapshot на текущий момент вручную
EXEC DBMS_WORKLOAD_REPOSITORY.create_snapshot;
 
-- Удалим снимки состояния с 20 по 30 включительно
BEGIN
  DBMS_WORKLOAD_REPOSITORY.drop_snapshot_range (
    low_snap_id  => 20,
    high_snap_id => 30);
END;

Для просмотра статистики используется скрипт awrrpt.sql. Он вычисляет разницу между двумя снимками и записывает отчёт в файл (текстовый либо html, по выбору).

@$ORACLE_HOME/rdbms/admin/awrrpt

этот сценарий предложит выбрать формат отчёта (по умолчанию - html) и пару снимков для сравнения.

Посмотрим, какие значения могут нас заинтересовать:

  • Статистики памяти. Секция "Memory Statistics" в отчёте.
  • Проценты попадания в кэши, процент soft parses, etc. (Hit Ratios). Секция "Instance Efficiency Percentages".
  • События ожидания (Wait Events). Секции "Foreground Wait Events" и "Background Wait Events".
  • Распределение рабочего времени (Time Model Statistics) - на что было потрачено рабочее (non-idle) время.
  • Данные различных Advisor'ов. Секция "Advisory Statistics".
  • Статистики запросов. Секция "SQL Statistics".

Более детальную информацию по интересующему нас запросу можно получить с помощью скрипта awrsqlrpt.sql. Для его работы потребуется SQL ID, полученный в секции "SQL Statistics" отчёта AWR.

Скрипт ashrpt.sql предоставит статистику активных сессий, взятую из представления V$ACTIVE_SESSION_HISTORY, в удобном виде.

Вас заинтересует / Intresting for you:

Настройка памяти базы данных O...
Настройка памяти базы данных O... 19212 просмотров Stas Belkov Sat, 07 Jul 2018, 15:44:14
Кэши, копии  и управление памя...
Кэши, копии и управление памя... 5881 просмотров Дэн Wed, 03 Jan 2018, 17:03:54
Мониторинг Oracle через метрик...
Мониторинг Oracle через метрик... 5060 просмотров sepia Tue, 21 Nov 2017, 13:18:05
Oracle AWR: статистика рабочей...
Oracle AWR: статистика рабочей... 18044 просмотров Antoniy Tue, 21 Nov 2017, 13:18:05
Войдите чтобы комментировать

apv аватар
apv ответил в теме #8868 6 года 2 мес. назад
AWR мощнейший инструмент для сбора статистики базу Oracle. Отличное подспорье в процессе настройки производительности и поиска узких мест.