How to Fix [ORA-00845: MEMORY_TARGET not supported on this system]

ORA-Errors

This is a very common error which you might face while starting up your oracle database.

This happens when your system is out of temporary storage. While starting up the database oracle uses /dev/shm to store temporary files but when it runs out of memory you get this error.

Error:
sql> startup
ORA-00845: MEMORY_TARGET not supported on this system

Reason:
/dev/shm is also know as tmpfs i.e. temporary file system which keeps all the file system in virtual memory to speed up several processes.

Solution:
Increase the size of /dev/shm

To check the size of /dev/shm

df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 7.6G 4.4G 2.9G 61% /
tmpfs 504M 76K 504M 1% /dev/shm
/dev/sda1 194M 25M 160M 14% /boot

To increase the size

mount -o remount,size=3G /dev/shm

Verify the size

df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 7.6G 4.4G 2.9G 61% /
tmpfs 3G 1007M 2.1G 33% /dev/shm
/dev/sda1 194M 25M 160M 14% /boot

To make permanent changes to your file system update your fstab

vi /etc/fstab

tmpfs /dev/shm tmpfs defaults,size=3G 0 0

Update the new fstab file

mount -a