SYMPTOM
When start up a database, Database failed to be up with ORA-00845 error.
[oracle@racnode1 ~]$ sqlplus /nolog SQL*Plus: Release 12.1.0.2.0 Production on Sun Mar 15 21:08:17 2015 Copyright (c) 1982, 2014, Oracle. All rights reserved. SQL> connect / as sysdba Connected to an idle instance. SQL> startup ORA-00845: MEMORY_TARGET not supported on this system
The alert log has messages as below:
Sun Mar 15 21:08:31 2015 WARNING: You are trying to use the MEMORY_TARGET feature. This feature requires the /dev/shm file system to be mounted for at least 1073741824 bytes. /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 659394560 and used is 499130368 bytes. Ensure that the mount point is /dev/shm for this directory.
SOLUTION
Please confirm that ORACLE_HOME is set correctly. This error sometimes happens when ORACLE_HOME is not set correctly.
Make sure that the /dev/shm size is configured large enough, like in:
# mount -t tmpfs shmfs -o size=2g /dev/shm
In this case, the size of the shared memory device is configured to be 2GB.
In order to make the same change persistent across system reboots, add an entry for this to the /etc/fstab mount table:
shmfs /dev/shm tmpfs size=2g 0 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.