Назад | Перейти на главную страницу

Неожиданное расширение области SQL

Мы используем автоматическое управление памятью в Oracle 11.1.0.7. На прошлой неделе в пятницу общий пул неожиданно увеличился с ~ 600 МБ до ~ 850 МБ. Память поступала из буферного кеша, размер которого увеличился с ~ 400 до ~ 150. Излишне говорить, что система выполняет значительно больше операций чтения с диска, чем раньше. Пока я не смог доказать, что это было неправильное изменение, но мне это точно не кажется правильным. Я хотел бы знать, чем это вызвано, чтобы, надеюсь, исправить это.

Я провел сравнение AWR до и после и заметил, что увеличение общего пула почти исключительно в области sql. Я посмотрел на хранящийся там SQL, используя такие запросы, как следующие, но не нашел ничего, что могло бы измениться в последнее время:

--Replace anything in quotes and numbers with % so that statements not using
--bind variables group together.
SELECT count(*), Trunc(sum(sharable_mem)/1024/1024) SharableMemory, 
   regexp_replace(regexp_replace(
      sql_text,'.\''.+\''','''%'''),'[0-9]+','%') || ''';' sql
FROM v$sql
GROUP BY regexp_replace(regexp_replace(
   sql_text,'.\''.+\''','''%'''),'[0-9]+','%')
HAVING sum(sharable_mem) > 2*1024*1024
ORDER BY Trunc(sum(sharable_mem)/1024/1024) DESC;

Я также пробовал смыть общий бассейн. Система не передает какой-либо общий пул буферному кешу, возможно, из-за того, что размер слишком быстро увеличивается после сброса.

Я также попытался установить минимальный размер для буферного кеша, чтобы заставить его отказаться от памяти из общего пула. В моей тестовой системе этот метод позволяет мне увеличить буферный кеш примерно на 100 МБ, но в моей действующей системе он даже не увеличится на 3 МБ, прежде чем выдает ошибку, указывающую, что памяти недостаточно для выполнения операции.

В журнале предупреждений отображается сообщение «Инцидент развертки [77273]: завершено» около времени, когда произошло изменение. Я не смог найти много информации об этом на Metalink. Это также показывает, что DIA0 был перезапущен примерно в это время, но я не понимаю, как это могло быть связано.

Вот несколько потенциально не связанных между собой заметок. AWR показал почти вдвое больше запросов на вывод для всех пространств имен в кэше библиотеки, чем было до начала проблемы. База данных была обновлена ​​с 10.2.0.4 около месяца назад. Количество сеансов увеличилось с ~ 200 до ~ 250 примерно за неделю до возникновения проблемы.

Я оставляю перезапуск экземпляра в крайнем случае, поскольку не знаю, поможет ли это.

Мы ценим любые предложения.

Перезагрузка!