Home » RDBMS Server » Server Utilities » LOCK_SGA - Shared Memory Segments - Solaris 2.5 - ORA-27125
LOCK_SGA - Shared Memory Segments - Solaris 2.5 - ORA-27125 [message #70902] Fri, 09 August 2002 12:58 Go to next message
Toyn
Messages: 36
Registered: April 2001
Member
Hi,
I'm doing some performance tuning to my system, and one parameter I've been working with is lock_sga. I've ensured that my sga is within the limits of the shmsys:shminfo_shmmax Solaris system OS parameter. When lock_sga is disabled, my database comes up fine, however, when it is enabled, I get the following error:

SVRMGR> startup
ORA-27125: unable to create shared memory segment
SVR4 Error: 1: Not owner

Below is an explanation of the error I've found:
ORA-27125: unable to create shared memory segment
Cause: A call to shmget() failed.

Do I have to be the owner of shmget in order to lock my sga in memory? I'm logged into svrmgrl as oracle (I can't access the utility as root). Is lock_sga even available for this version of Solaris 2.5? I'd like to store my entire sga in memory, what do I have to do in order to accomplish this? Thanks!
Re: LOCK_SGA - Shared Memory Segments - Solaris 2.5 - ORA-27125 [message #70905 is a reply to message #70902] Sat, 10 August 2002 13:39 Go to previous messageGo to next message
TomazZ
Messages: 7
Registered: August 2002
Junior Member
From metalink:
This problem is caused by an operating system limitation, and occurs
when
the following two conditions are true:

o When the parameter LOCK_SGA is set to TRUE in the init.ora file, and
o When you are running on the Solaris platform.

The setting of the parameter LOCK_SGA=TRUE is not supported on Solaris.

On Solaris the function calls that Oracle uses to fix the SGA in memory can
only be done by root, but the Oracle executable is normally owned by Oracle.
The Oracle user does not have the required privileges to call the OS function
to fix the SGA in memory. Other platforms do not have this problem. Oracle
includes this parameter on Solaris because it is part of the generic code.
This feature on Solaris will not work until Sun changes their code so that
memory can be accessed by non-root users.
Re: LOCK_SGA - Shared Memory Segments - Solaris 2.5 - ORA-27125 [message #71985 is a reply to message #70905] Fri, 14 February 2003 09:50 Go to previous message
VISHNU
Messages: 14
Registered: November 2001
Junior Member
Same issue with Linux. In fact, setting lock_sga explicitly (either true or false) gives error. With lock_sga set to false, the following error occurs:

ORA-27123: unable to attach to shared memory segment
Linux Error: 22: Invalid argument

It looks like the theory that only root is allowed access might be valid. At least there is consistency in behavior across the Unix variants.
Previous Topic: how to start dbverf80?
Next Topic: How to make Oracle 9.2 dbora startup script
Goto Forum:
  


Current Time: Tue Dec 24 06:30:57 CST 2024