Friday, February 15, 2008

Setting kernel and project parameters for Oracle on Solaris 10

Before installing Oracle on Solaris, you have to do some preparatory works for a correct installation. For example creating groups and user. (groups: oinstall, (dba-optional); user: oracle)
there is an another important requirement. Kernel parameters..
Before Solaris 10, you have to edit the /etc/system file to change kernel parameters. But with Solaris 10, we use projects to define required parameters.
first of all, control the project information for the user you loged in (for installation it should be oracle)

# id -p
uid=101(oracle) gid=101(oinstall) projid=3(default)

it is clear that proejct id for oracle is 3. now we can control the kernel parameters.

for the parameter max-shm-memory :
# prctl -n project.max-shm-memory -i project 3

for the parameter max-sem-ids
# prctl -n project.max-sem-ids -i project 3

if the values are not enough for oracle (compare them with the requirements given in Oracle Documentation) you have to change them. If you don't change these values, you can get "Out Of Memory" error while installing Oracle.

you can change them with these commands:


# prctl -n project.max-shm-memory -v 6gb -r -i project 3
# prctl -n project.max-sem-ids -v 256 -r -i project 3


there is a last point, to make these values permanent, you have to run these commands:
# projmod -K "project.max-sem-ids=(priv,256,deny)" default
# projmod -s -K "project.max-shm-memory=(priv,6000MB,deny)" default

now your /etc/project file is changed.

No comments: