Memory Target Not Supported on the Restored Oracle Server

Symptom

I have performed a bare metal recovery of an Oracle server. The memory size of the target machine is less than the source Oracle server and the Oracle database uses AMM (Automatic Memory Management). After BMR, when I start the Oracle database instance, I get the following error:

SQL> startup

ORA-00845: MEMORY_TARGET not supported on this system

Solution

To resolve this error, increase the size of the shared memory virtual file system.

Follow these steps:

  1. Log in to the target machine as a root user.
  2. Open the command prompt and verify the size of the shared memory virtual file system.

    # df -k /dev/shm

    Filesystem 1K-blocks Used Available Use% Mounted on tmpfs 510324 88 510236 1% /dev/shm

  3. Enter the following command and specify the required size of the shared memory:

    # mount -o remount,size=1200m /dev/shm

  4. Navigate to the "/etc/fstab" folder and update the tmpfs setting:

    tmpfs /dev/shm tmpfs size=1200m 0 0

Note: The shared memory virtual file system size should be big enough to accommodate the MEMORY_TARGET and MEMORY_MAX_TARGET values. For more information on the variables, refer to the Oracle documentation.