# rm-rf.es

ORA-00845: MEMORY_TARGET not supported on this system

Al arrancar una base de datos Oracle nos podemos encontrar con el siguiente error:

SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system

De la documentación de Oracle:

MEMORY_TARGET specifies the Oracle system-wide usable memory. The database tunes memory to the MEMORY_TARGET value, reducing or enlarging the SGA and PGA as needed.

En estos casos el error se debe a que el filesystem que se usa para la MEMORY_TARGET (filesystem de memoria compartida) no está disponible o no tiene el suficiente tamaño para satisfacer al parámetro especificado en Oracle (init.ora). El filesystem utilizado es shmfs así que lo primero que debemos revisar es que se encuentre montado en nuestro sistema y que su tamaño sea suficiente para lo requerido por la base de datos:

# df -h
Filesystem            Size  Used Avail Use% Mounted on
(...)
tmpfs                 2.0G  101K  1.9G   1% /dev/shm
(...)

En el caso de que no estuviera montado, lo montamos con el siguiente comando, el cual también nos serviría para montarlo con un mayor tamaño:

# mount -t tmpfs shmfs -o size=5g /dev/shm

Probamos a arrancar la base de datos de nuevo y debería funcionar:

SQL> startup nomount
ORACLE instance started.

Finalmente añadimos o modificamos la entrada correspondiente del fichero /etc/fstab para hacer los cambios persistentes a reinicios:

tmpfs                   /dev/shm                tmpfs   size=5g        0 0
Salir de la versión móvil