Changing kernel parameters in Solaris 10
I’ve been installing Oracle 10g on Solaris 10 x86-64. I was keen to avoid doing the old fashioned method of editing /etc/system but instead set the various shared memory segments dynamically using resource management and projects. The official Oracle installation guide for Solaris 10 x86-64 mentions how to do this, but it actually contains incorrect and incomplete information. Ignore the Oracle documentation and set your shared memory kernel parameters by doing the following:
sudo projadd -U oracle -G oinstall user.oracle sudo projmod -sK "project.max-shm-memory=(priv,14294967295,deny)" user.oracle sudo projmod -sK "process.max-sem-ids=(priv,1024,deny)" user.oracle sudo projmod -sK "process.max-sem-nsems=(priv,1024,deny)" user.oracle sudo projmod -sK "process.max-shm-ids=(priv,1024,deny)" user.oracle
You can look at /etc/project to ensure you have correctly entered the parameters. I would recommend looking at id -p as the oracle user to make sure that the user you are running oracle as, is in the correct project:
id -p uid=2000(oracle) gid=2000(oinstall) projid=100(user.oracle)
You can see the oracle user is using the user.oracle project, as opposed the default project.


(2 votes, average: 3.5 out of 5)