DBAtlas · Атлас эксплуатации баз данных

ORA-00845: MEMORY_TARGET not supported on this system

Oracle

Что это значит?

Экземпляр не может запуститься, так как автоматическое управление памятью, запрошенное через MEMORY_TARGET / MEMORY_MAX_TARGET, не поддерживается конфигурацией общей памяти операционной системы. В Linux обычно это происходит потому, что /dev/shm меньше запрошенного целевого объёма памяти.

Почему возникает?

MEMORY_TARGET задан больше, чем /dev/shm (смонтированный как tmpfs); либо MEMORY_TARGET (AMM) используется при включённых HugePages; AMM несовместим с HugePages, а ASMM (SGA_TARGET) совместим. Автоматическое управление памятью Oracle работает путём создания файлов в /dev/shm, и если этого пространства недостаточно, экземпляр не запускается.

Как исправить

Сделайте /dev/shm больше, чем MEMORY_TARGET: перемонтируйте tmpfs (mount -o remount,size=8G /dev/shm) и сделайте изменение постоянным в /etc/fstab. В качестве альтернативы используйте раздельные настройки вместо AMM: задайте MEMORY_TARGET и MEMORY_MAX_TARGET равными 0 и определите SGA_TARGET и PGA_AGGREGATE_TARGET. Если используете HugePages, отключите AMM и предпочтите ASMM (SGA_TARGET).

Открыть в DBAtlas →

Ещё по этой СУБД