Out of Memory Problems On Oracle 10 - Solaris 10
Out of Memory Problems On Oracle 10 - Solaris 10
Many kernel parameters have been replac ed by so called resource controls in Solaris
10. It is possible to c hange resource controls using the prctl command. All shared
memory and semaphore settings are now handled via resource controls, so any entries
regarding shared memory or semaphores (shm & sem) in /etc/system will be ignored.
Unlike earlier releases of Solaris, most of the system parameters needed to run Orac le
are already set properly, so the only one you need is the maximum shared memory
parameter. In earlier versions this was called SHMMAX and was set by editing the
/etc/system file and rebooting. With Solaris 10 you set this by modifying a «Resource
Control Value». You c an do this temporarily by using prctl, but that is lost at reboot
so you will need to add the c ommand to the orac le user's .profile.
The other option is to create a default project for the orac le user.
# projadd -U oracle -K \
"project.max-shm-memory=(priv,4096MB,deny)" user.oracle
Makes a project named "user.orac le" in /etc/project with the user oracle as
it's only member.
# cat /etc/project
system:0::::
user.root:1::::
noproject:2::::
default:3::::
group.staff:10::::
user.oracle:100::oracle::project.max-shm-memory
=(priv,4294967296,deny)
Because the name was of the form "user.username" it bec omes the orac le user's
default projec t.
The value of the maximum shared memory is set to 4GB, you might want to use
a larger value here if you have more memory and swap.
# projmod -s -K "project.max-sem-ids=(priv,256,deny)" \
user.oracle
akadia.com/…/ora_out_of_memory.… 2/2