Introduction
While installing Oracle database version 12c on a Solaris 11 zone, out DB Team reported the following error:They asked us to investigate and on checking I found that the memory utilization was very low and the sufficient memory to the tune of 120GB had been assigned to the zone.
Diagnostics and fix
We had confirmed that sufficient memory had been allocated to the zone and almost all of it was available for use. There weren't any projects created on the system by default. It then dawned on me that the database was probably trying to create a shared memory segment whose size was greater than the default size of 8GB as allocated to processes in the default project.It then became clear that the fix was to set the value of project.max-shm-memory. To facilitate the installation, I set the parameter for the Oracle installer process.
uslabnodedb01# ps -ef|grep java
root 684 104 0 09:13:46 pts/5 0:00 grep java
obruce 29307 18012 0 08:52:16 pts/2 2:48 /brucedb/db/11.2.0/jdk/jre/bin/sparcv9/java -Doracle.installer.not_bootstrap=tr
I used the prctl command to set the value as shown in the below command
uslabnodedb01# prctl -r -n project.max-shm-memory -v 123695058124 -i process 29307
Note that the size is in bytes.
Next, I verified that the value had been set.
uslabnodedb01# prctl -n project.max-shm-memory -i process 29307
process: 29307: /brucedb/db/11.2.0/jdk/jre/bin/sparcv9/java -Doracle.installer.not_boo
NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT
project.max-shm-memory
privileged 115GB - deny -
system 16.0EB max deny -
No comments:
Post a Comment