ORA-00845: MEMORY_TARGET not supported on this system
OracleWhat does it mean?
The instance cannot start because the automatic memory management requested via MEMORY_TARGET / MEMORY_MAX_TARGET is not supported by the operating system's shared memory configuration. On Linux this is usually because /dev/shm is smaller than the requested memory target.
Why does it happen?
MEMORY_TARGET is set larger than /dev/shm (mounted as tmpfs); or MEMORY_TARGET (AMM) is used while HugePages is enabled; AMM is not compatible with HugePages, whereas ASMM (SGA_TARGET) is. Oracle Automatic Memory Management works by creating files on /dev/shm, and if this space is insufficient the instance does not start.
How to fix it
Make /dev/shm larger than MEMORY_TARGET: remount tmpfs (mount -o remount,size=8G /dev/shm) and make it persistent in /etc/fstab. Alternatively, use separate settings instead of AMM: set MEMORY_TARGET and MEMORY_MAX_TARGET to 0 and define SGA_TARGET and PGA_AGGREGATE_TARGET. If you use HugePages, disable AMM and prefer ASMM (SGA_TARGET).