Фев 012011
 

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, в удобном виде.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

(обязательно)

(обязательно)