Tuesday, July 1, 2014

ORA-27102: out of memory Linux-X86_64 Error: 28: No space left on device

As server memory upgraded from 64GB RAM to 96GB.Even though when I am trying to do startup the database and I am getting following error:
ORA-27102: out of memory Linux-X86_64 Error: 28: No space left on device

OS: Red Hat Linux
Database version: 10g and later

Error message:
SQL> startup nomount
ORA-27102: out of memory
Linux-x86_64 Error: 28: No space left on device




Verify your shmall kernel parameter it is probably set too small:
$ cat /proc/sys/kernel/shmall
2097152

Solution:
shmall  =  sum of all the SGAs on the system / page size

Determine page size using this command:
$ getconf PAGE_SIZE
4096

For example, if your sum of all SGAs on a server is 19Gb and the result of  PAGE_SIZE' is 4096 then set shmall should be set to 4980736 pages.

 19G = 20401094656 bytes

 20401094656 4096 = 498073

Add or edit the following line in the "/etc/sysctl.conf" file:
kernel.shmall = 4980736

Run the following command to change the current kernel parameters:
$ sysctl -p
$ cat /proc/sys/kernel/shmall
4980736

Switch back to oracle user and retry the startup command.

I hope this helps.

Please feel free to leave your questions or suggest improvements to this section.

No comments:

Post a Comment