Как ограничить глобальные ресурсы памяти базы данных Oracle 10g - PullRequest
3 голосов
/ 22 декабря 2008

Сервер, на котором я запускаю oracle, страдает от нехватки памяти. Кто-нибудь знает, если / как я могу ограничить глобальные ресурсы памяти, которые оракул будет использовать?

У меня SGA_TARGET_MAX = 500M и предел сеанса / процесса 150, но максимальное число одновременных сеансов не превысило 50.

Ответы [ 2 ]

4 голосов
/ 23 декабря 2008

Вы не говорите, сколько памяти на самом деле имеет ваша машина (и все ли она доступна экземпляру Oracle). Oracle использует два типа памяти. Первая - это разделяемая память (SGA), вторая - память процесса (PGA). SGA, как правило, легче контролировать.

Из SQL * Plus, попробуйте SHOW SGA. Посмотрите, соответствует ли это вашей цели. Также попробуйте SHOW PARAMETER PGA Затем запросите v $ process и сравните общую PGA процессов с целью. Возможно, вы установили слишком высокое значение PGA_AGGREGATE_TARGET / SGA_MAX_SIZE. Или, возможно, Oracle не может удерживать память PGA до цели (например, из-за сессий, хранящих большое количество информации в массивах PL / SQL).

0 голосов
/ 23 декабря 2008

попробуйте использовать профили и установить предел SESSIONS_PER_USER

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...