ORACLE introduced an automatic memory management feature from the 11g version. This feature requires more shared memory (devshm ).
ORACLE introduced an Automatic Memory Management feature from the 11g version. This feature requires more shared Memory (/dev/shm ).
Impact of/dev/shm on Oracle 11g:
ORACLE introduced an Automatic Memory Management feature from the 11g version. This feature requires more shared Memory (/dev/shm ), therefore, if you decide to apply this feature, make sure that the shared memory is greater than the initialization parameters MEMORY_MAX_TARGET and MEMORY_TARGET in ORACLE (Note: These two parameters are the initialization parameters corresponding to the automatic memory management feature).
If the MEMORY_MAX_TARGET and MEMORY_TARGET parameters are set to a non-zero value in the initialization parameters and do not match the system shared memory, the ORACLE database will trigger the ORA-00845 at startup: MEMORY_TARGET not supported on this system error.
An error may be reported when MEMORY_TARGET or SGA_TARGET is modified in Oracle 11g Linux:
SQL> shutdown immediate
Database closed.
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system
The following error will be reported in the database's alert Log:
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 10536091648 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 8589852672 and used is 81920 bytes.
Memory_target needs larger/dev/shm
The problem is obvious: because the available space of/dev/shm (the total size of non-shm) is smaller than the MEMORY_TARGET value set in the parameter file.
The solution is to increase/dev/shm or reduce MEMORY_TARGET. The following is done by adding/dev/shm:
Before modification:
Osedb01 :~ # Cat/etc/fstab | grep shm
Shm/dev/shm tmpfs size = 11g 0 0
Osedb01 :~ # Df-h/dev/shm
Filesystem Size Used Avail Use % Mounted on
Shm 11G 6.5G 4.5G 59%/dev/shm
MEMORY_TARGET is set to 10 Gb, while/dev/shm has only 4.5 GB of available space.
Modify the size of/dev/shm:
Osedb01 :~ # Cat/etc/fstab | grep shm
Shm/dev/shm tmpfs size = 18g 0 0
After modification, you need to re-mount/dev/shm to take effect:
Osedb01 :~ # Mount-o remount/dev/shm
Osedb01 :~ # Df-h/dev/shm
Filesystem Size Used Avail Use % Mounted on
Shm 18G 6.5G 12G 36%/dev/shm
Restart the database again. Normal !!
Additional: Data in/dev/shm will be cleared after the system is restarted. Note!