Речникът на данни или статистиките за фиксиран обект може да са стари, опитайте да ги съберете отново:
exec dbms_stats.gather_dictionary_stats;
exec dbms_stats.gather_fixed_objects_stats;
alter system flush shared_pool;
Дори това не събира непременно статистика за всички системни обекти. Някои обекти, като X$KFTBUE
, трябва да се събират ръчно. Въпреки че това е рядък проблем с речника на данните, който може да не е от значение тук.
Ако това не работи, някои следващи възможни стъпки са разглеждане на инструменти като SQL Tuning Advisor за създаване на профил или използване на SQL Plan Management, за да принудите оптимизатора да използва конкретен план, който е работил преди. Настройката на заявка за речник на данни може да бъде много трудна, тъй като нямате много контрол.