Solaris 10 has some memory limits built in that Oracle needs chnaged.
These used to be made in /etc/system and then you did a reboot.
Now they are done as part of “projects” and they are applied when the user logs on. So you can make a change and if they shut down, log off and come back in it should be done.
When a box has Oracle installed, the setting should all be made, so all a production SA should have to do is make changes.
You can see these in /etc/project
Note that /etc/project won’t have memory in GB and MB format, but you can give it to projmod and it will convert.
So when I needed to bump Oracle up from 30GB to 35GB I ran this to see the active settings:
prctl -i project user.oracle
and this to see what was set for it:
and this to change it:
projmod -s -K “project.max-shm-memory=(priv,35GB,deny)” user.oracle
Then you can cat /etc/project again to see that the change was made.
After this if you run prctl -i project user.oracle it won’t show you the new setting because the user is still on, but the Oracle DBA usually knows what to do, and in a few moments the change will be in affect.
ERRORS: If you get an error like this when you run projmod:
projmod: Parse error on line 6, Invalid attribute ” project.max-shm-memory=(privileged,16106127360,deny)”
Check /etc/project for extra spaces between the ; and the atributes. Delete them, save /etc/project and try again.
There are also associations between users and projects in
but I’m not 100% sure how that works.
Show the current project a user is using:
To see what project processes are running under:
One issue I have found, and I see from Google searches, but for which I’ve found no answer is often you can “su – oracle” and “id -p” only shows the default project. Same if you ssh in as oracle. Only if you su – oracle AGAIN after you are already oracle do you see the right project with “id -p”. I don’t see this on the systems set up by ITO DBAs, but systems where the app team has hired contractors to do the install this is the case. The processes under oracle seem to work, though.