Serg2011
Дата: 29.03.2011 10:20:19
Всем добрый день!
ORACLE 9.2.0.6, 32 bit Модель оптимизатора CHOOSE .
База биллинговая, около 1 Tb. В основной схеме около тысячи таблиц. Десятка три больших секционированных таблиц. Ежемесячный прирост около 40Gb. Чуть меньший объем удаляется из "старых" партиций...
Сбор статистики не велся очень длительное время (года два с уходом админа). За это время менялся сервер и дисковый массив... База постепенно стала заметно медленней работать..
Хочу собрать статистику. Подскажите достаточно ли будет выполнения следующих действий:
1) execute dbms_stats.gather_table_stats(ownname=> 'СХЕМА', tabname=> 'ТАБЛИЦА', estimate_percent=> 20, cascade=> TRUE );
для каждой таблицы в основной СХЕМЕ.. "Cascade" - укажет сбор статистики и по партициям в партиционных таблицах и по индексам .. , 20% точности думаю будет вполне достаточно (если поставить больше просто не дождемся)..
2) exec dbms_stats.gather_system_stats( gathering_mode => 'START');
через сутки :
exec dbms_stats.gather_system_stats( gathering_mode => 'STOP');
соберем системную статистику..
Подскажите достаточно ли будет этого? Насколько я понял ANALYZE использовать не нужно в 9i..
Добрый Э - Эх
Дата: 16.02.2012 10:32:54
Uncle Tola |
---|
Внесу небольшой оффтоп в тему.
Скажите в 9i системная статистика учитывается? Наши админы утверждают что системная статистика в 9ке ни на что не влияет. |
Уточни у них, что они имеют ввиду под системной статистикой. А то многие горе-админы путают системную статистику со статистикой по схеме SYS.
А вообще, на вопрос ответ однозначный - системная статистика (пропускная способность ввода-вывода, вычислительная мощность процессора) в девятки учитывается и влияет на план выполнения запроса.