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 comply with 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!