DBAtlas · Atlas de operações de banco de dados

ORA-27102: out of memory

Oracle

O que significa?

Durante a inicialização, a instância Oracle não conseguiu alocar o segmento de memória compartilhada (SGA) que solicitou ao sistema operacional. Geralmente aparece junto com ORA-27102 e um código de erro OSD/Linux de nível mais baixo (por exemplo, Linux-x86_64 Error: 28: No space left on device).

Por que acontece?

A memória solicitada para a SGA excede os limites de memória compartilhada do kernel (shmmax, shmall); o servidor não tem RAM física/swap suficiente; ou a configuração de HugePages está ausente/insuficiente e uma SGA grande não pode ser alocada. Comum após aumentar SGA_MAX_SIZE.

Como resolver

Aumente os parâmetros de memória compartilhada do kernel: defina kernel.shmmax e kernel.shmall em /etc/sysctl.conf para cobrir a SGA e execute sysctl -p. Se usar HugePages, calcule e defina vm.nr_hugepages com base na SGA. Verifique o total de RAM e swap no servidor; se necessário, reduza SGA_MAX_SIZE / SGA_TARGET.

Abrir no DBAtlas →

Mais entradas deste banco