APPLIES TO:
Oracle Database - Enterprise Edition - Version 11.1.0.6 and later
Oracle Database - Standard Edition - Version 11.2.0.1 to 11.2.0.1 [Release 11.2]
Linux x86
Linux x86-64
***Checked for relevance on 30-Sep-2014***
SYMPTOMS
During the startup of the database instance the following error is raised:
SQL> connect sys as sysdba
Enter password: *****
Connected to an idle instance.
SQL> STARTUP NOMOUNT
ORA-00845: MEMORY_TARGET not supported on this system
The instance alert file shows:
Starting ORACLE instance (normal)
WARNING: You are trying to use the MEMORY_TARGET feature.
This feature requires the /dev/shm file system to be mounted for at Least <size> bytes.The /dev/shm is either not mounted or is mounted with available space less than this size.
Please fix this so that MEMORY_TARGET can work as expected. Current available is <size> and used is <size> bytes.memory_target needs larger /dev/shm
Also error messages like ORA-4031 may be reported and no new connections can be established to the database.
CHANGES
The Automatic Memory Management (AMM) has been implemented by setting parameters like MEMORY_TARGET and/or MEMORY_MAX_TARGET.
CAUSE
The new Automatic Memory Management functionality uses /dev/shm on Linux for SGA and PGA management. The errors occur if either MEMORY_TARGET or MEMORY_MAX_TARGET is configured larger than the configured /dev/shm size, or if /dev/shm is mounted incorrectly.
SOLUTION
Please confirm that ORACLE_HOME is set correctly. This error sometimes happens when it is not set correctly.
Make sure that the /dev/shm size is configured large enough, like in:
# mount -t tmpfs shmfs -o size=7g /dev/shm
In this case, the size of the shared memory device is configured to be 7GB.
In order to make the same change persistent across system reboots, add an entry for this to the /etc/fstab mount table, as in:
shmfs /dev/shm tmpfs size=7g 0
Note:
You should check with your System Administrator what the "best" size for /dev/shm is, based on what has been reported in the alert file.
Also, many best practices now suggest disabling AMM especially in Exa* Engineered boxes that have larger memory capability and can use Huge / Large pages.
This is because AMM and Huge / Large pages are mutually exclusive and overall performance will be better using Huge pages
Make sure that the df output shows the correct /dev/shm configuration when using Oracle on the system:
$ df -k
Filesystem 1K-blocks Used Available Use% Mounted on
...
shmfs 6291456 832356 5459100 14% /dev/shm
This document is taken from Oracle Support Doc ID 465048.1