Managing Optimizer Statistics in Oracle

После массового удаления данных пересобираем статистику оптимизатора в базе данных Oracle.

  • Проверяем ведётся и у вас сбор статистики оптимизатора автоматически.

SELECT job_name FROM dba_scheduler_jobs WHERE job_name LIKE '%STATS%';
SELECT * FROM dba_scheduler_jobs WHERE job_name LIKE '%BSLN_MAINTAIN_STATS_JOB%';

  • Смотрим количество строк до сбора статистики

SELECT num_rows FROM dba_tables WHERE owner='MY_SCHEMA' AND table_name = 'MY_TABLE';

  • Запускаем сбор статистики вручную

EXEC dbms_stats.gather_table_stats('MY_SCHEMA','MY_TABLE');

  • Смотрим, что количество строк изменилось

SELECT num_rows FROM dba_tables WHERE owner='MY_SCHEMA' AND table_name = 'MY_TABLE';

  • Можно запустить сбор статистики всей базы

EXEC DBMS_STATS.GATHER_DATABASE_STATS ();

Оставьте комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *