Monday, October 24, 2016

ORA-00845: MEMORY_TARGET not supported on this system

Getting the error when trying to start database.

[oracle@rac1 ~]$ srvctl start database -d cdbracp
PRCR-1079 : Failed to start resource ora.cdbracp.db
CRS-5017: The resource action "ora.cdbracp.db start" encountered the following error:
ORA-00845: MEMORY_TARGET not supported on this system
. For details refer to "(:CLSN00107:)" in "/u01/app/oracle/diag/crs/rac1/crs/trace/crsd_oraagent_oracle.trc".

CRS-2674: Start of 'ora.cdbracp.db' on 'rac1' failed
CRS-2632: There are no more servers to try to place resource 'ora.cdbracp.db' on that would satisfy its placement policy
CRS-5017: The resource action "ora.cdbracp.db start" encountered the following error:
ORA-00845: MEMORY_TARGET not supported on this system
. For details refer to "(:CLSN00107:)" in "/u01/app/oracle/diag/crs/rac2/crs/trace/crsd_oraagent_oracle.trc".

CRS-2674: Start of 'ora.cdbracp.db' on 'rac2' failed
[oracle@rac1 ~]$

Annoying !!!!

Check the /dev/shm available space

[oracle@rac1 ~]$ df -h /dev/shm
Filesystem      Size  Used Avail Use% Mounted on
tmpfs                 2.4G  635M  1.8G  27% /dev/shm

Look like 1.8G and I know that my database instance has memory_target set up to 2G. Means we do not have enough space for this oracle instance in tmpfs

to fix this what I have done is modified /etc/fstab and set the value of tempfs to 5G. Please note that this value has to be less than available memory on host.

There is no need to restart after this, just remount the volume.

[root@rac1 ~]# mount -o remount /dev/shm
[root@rac1 ~]# df -h /dev/shm
Filesystem      Size  Used Avail Use% Mounted on
tmpfs                 5.0G  635M  4.4G  13% /dev/shm

Now I have 4.4G free space which means I should be able to start the instance with 2G of memory_target.

[oracle@rac1 ~]$ srvctl start database -d cdbracp
PRCR-1079 : Failed to start resource ora.cdbracp.db
CRS-5017: The resource action "ora.cdbracp.db start" encountered the following error:
ORA-00845: MEMORY_TARGET not supported on this system
. For details refer to "(:CLSN00107:)" in "/u01/app/oracle/diag/crs/rac2/crs/trace/crsd_oraagent_oracle.trc".

CRS-2674: Start of 'ora.cdbracp.db' on 'rac2' failed
CRS-2632: There are no more servers to try to place resource 'ora.cdbracp.db' on that would satisfy its placement policy
[oracle@rac1 ~]$


It only failed on node 2 as I am a dum ass and forgot to remount on node2

[oracle@rac1 ~]$ srvctl status database -d cdbracp
Instance cdbracp1 is running on node rac1
Instance cdbracp2 is not running on node rac2
[oracle@rac1 ~]$



after remounting on node2 I could start both database instances.

[root@rac2 ~]# mount -o remount /dev/shm
[root@rac2 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
tmpfs                 5.0G  635M  4.4G  13% /dev/shm

[oracle@rac1 ~]$ srvctl start instance -d cdbracp -i cdbracp2
[oracle@rac1 ~]$
[oracle@rac1 ~]$ srvctl status database -d cdbracp
Instance cdbracp1 is running on node rac1
Instance cdbracp2 is running on node rac2
[oracle@rac1 ~]$




1 comment:

Santosh said...

Nicely explained. I was getting ORA-00845 when I increased the value of memory_target and memory_max_target in RAC database. Thanks for such a nice explanation. It helped me a lot.