I have 5 instances running on an oracle 18.104.22.168 solaris 2.8 server. Each with the following setup
inst-a = 200 processes
inst-b = 200 processes
inst-c = 100 processes
inst-d = 50 processes
inst-e = 50 processes
My system set up is
When I do check the semaphores on the system, I notice
s 196608 0xd8ded9a8 --ra-r----- 204
s 196609 0xfcef8940 --ra-r----- 71
s 1376258 0x109ccca8 --ra-r----- 204
s 196611 0x834c0788 --ra-r----- 54
s 196612 0xd87dff2c --ra-r----- 104
Now comes the worst part. When I tried to increase the processes of inst-a to 500 and restart the instance, I'm getting ORA-21746. This was the setup some-time back. :D Why it is so, even if we try to do the math over here
say suppose that my new instance consumes 510 NSEMS, then the total would only come to 943. Where my SEMMNS is 1030. So the new setup would cleanly fall within the limits. I'm now confused of why oracle is poping out this ORA-217146.
I know that just bumping the semmns, would fix this problem, but still couldn't get why? :confused: :confused:
Any ideas, or thoughts????
I have recently installed Oracle 8.1.6 on Sun Solaris 2.51. I could not create database through database assistant i got the following error
ora-21746 - post/wait installation failure.
The RAM is 512MB
the kernel settings are as follows:
SHMMAX - 4294967295
SHMMIN - 1
SHMMNI - 100
SHMSEG - 10
SEMMNS - 200
SEMMNI - 70
SEMMSL - 50 (Equal to 50 processes in init.ora)
so i have abondened the database creation through database assistant, and instead decided to do it after starting the instance. I gave the following command and still i got the same error.
SVRMGR> connect internal
SVRMGR> startup nomount
Please help me to solve the problem.
thanks in advance
It is true that just bumping the semaphores will not help identify the cause, but it is for sure that you should have your minimum requirements satisfied.
Pls. note that the general formula for calculating SEMMNS in a three instance set up consider the no. of processes in each instances as
a = 200
b = 100
c = 100
SEMMNS = [ (2*a) +b+c ] + [ No. of instances * 10]
Adding the largest process parameter twice, then adding an additional 10 for each database so the total works to 630 for this sample.
In your case, the SEMMNS will work out to 1450, whereas your parameter value works to 1030. This may be a reason for the failure in instantiation.
Just try out if it works. Hope it helps.
Note : Pls. while mentioning the error numbers, pls. mention the exact error code, the same it to DWARKA also.
Your problem may also be similar, add 10 to your SEMMSL parameter. Your RAM is sufficient, but check out if you have enough swap space. The SWAP SPACE should be either twice the amount of RAM or atleast 400 MB, whichever is greater is recommended.
Try this out and see if this works. ORA-27146, to my knowledge is related to the OS on which the DB is installed.
Pls. post your reply, if you are able to troubleshoot.
I would totally agree with you Nanda. Infact one of the oracle article from metalink suggestests that you set the
SEMMNS = (SUM(processes) * 2) + (#instances * 10)
But still couldn't get the math on my present setup. My total semophore usage is still within the limit of SEMMNS, this is what puzzels me why?
Dwaraka, as Nanda suggested add 10 to your max process count and put the setup for SEMMNS as I suggested above, and have enough swap space and that will all fix your problem.
If you have any problem on this regard, pl. let us know.
Just to get some attention, and move to the latest position on the thread, posting this message :)