Как отключить статистику по глобальной временной таблице и влияние
Здравствуйте, я не очень опытен в администрировании Oracle DB, у меня есть несколько запросов, которые начали работать очень медленно и все связаны с временной таблицей (12c). Я вижу несколько сообщений о отключении статистики на GTT
(Global Temporary Table
), однако я не нашел много, но просто следуя настройке, чтобы отключить
exec dbms_scheduler.disable('SYS.GATHER_STATS_JOB');
У меня вопрос какой-либо конкретный способ отключить статистику ТОЛЬКО для GTT, и как это отрицательно сказывается на приведенной выше команде?
1 ответ
Решение
Это отключает сбор статистики по таблице
begin
dbms_stats.delete_table_stats('TABLE_OWNER', 'TABLE_NAME');
dbms_stats.lock_table_stats('TABLE_OWNER', 'TABLE_NAME');
end;
/
Однако лучшей идеей является сбор статистики по таблице, когда она заполнена репрезентативным набором данных:
begin
dbms_stats.gather_table_stats('TABLE_OWNER', 'TABLE_NAME');
dbms_stats.lock_table_stats('TABLE_OWNER', 'TABLE_NAME');
end;
/
https://docs.oracle.com/cd/B28359_01/appdev.111/b28419/d_stats.htm