System defined Shared memory limits
Hello,
I am in a situation where I want to determine the system defined shared memory limits in a process on Solaris 7.
Is there a system call or a library function which can serve this information on the system?
I want to avoid using system() function or popen().
Your problem seemed reasonable. What were you doing wrong?
Darren
Similar Messages
-
ORA-27123 unable to attach shared memory segment
Running oracle 8.1.5.0.0 on Redhat 6.0 with kernel 2.2.12, I keep getting the error ORA-27123 unable to attach shared memory segment when trying to startup and instance with an SGA > 150 MB or so. I have modified the shmmax and shmall kernel parameters via the /proc/sys interface. The relevant output of ipcs -l is below:
------ Shared Memory Limits --------
max number of segments = 128
max seg size (kbytes) = 976562
max total shared memory (kbytes) = 16777216
min seg size (bytes) = 1
This system has 2gb of physical memory and is doing nothing except oracle.
I changed the shmmax and shmall parameters after the instance was created, was their something I needed to do to inform Oracle of the changes?High JW,
i had the same problem on my installation.
The solution is written in the Oracle8i Administrator Refernece on page 1-26 "Relocating the SGA"
a) determine the valid adress range for Shared Memory with:
$ tstshm
in the output Lowest & Highest SHM indicate the valid adress range
b) run genksms to generate the file ksms.s
$ cd $ORACLE_HOME/rdbms/lib
$ $ORACLE_HOME/bin/genksms -b "sga_beginn_adress" > ksms.s
c) shut down any instance
d) rebuilt the oracle exe in $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk ksms.o
$ make -f ins_rdbms.mk ioracle
the result is a new oracle kernel that loads the SGA at the adress specified in "sga_beginn_adress".
regards
Gerhard -
Dear developers,
I have some documentation on ABAP SHARED OBJECTS and I wonder how I could define shared memory objects at run time ( so I would need something like an API ) instead of using the SHMA transaction.
I actually also wonder what would happen if 2 users of the same shared object would call on one of its methods ? Can we have concurrent access ? How does the whole locking thing works ? Is it possible to implement waiting calls/locks ?
If you have any serious/technical documentation on semaphores/locks in SAP/ABAP I'd also be very interested.
Sincerely,
Olivier MATTHi matt,
This is vijay here.
if you r working on frequntly changed data then you must use this locking technique.
well jus go to se11 and make a lock object by starting initial......EZ....
EX: EZENMARA.
then u can fix the lock as shared or (exclusive,cumulative) or( exclusive, not cumulative)
you can also fix the lock parameters like specific fields.then jus save and activate.
and when you will make a program jus call the function module enqueue_ezenmara for locking and dequeue_ezenmara for unlocking and u can get rest in my program.
regards
vijay
rewards if answer is helpfull.
TABLES: MARA.
PARAMETER: MATNR LIKE MARA-MATNR.
CALL FUNCTION 'ENQUEUE_EZENMARA'
EXPORTING
MODE_MARA = 'S'
MANDT = SY-MANDT
MATNR =
X_MATNR = 'MATNR'
_SCOPE = '2'
_WAIT = ' '
_COLLECT = ' '
EXCEPTIONS
FOREIGN_LOCK = 1
SYSTEM_FAILURE = 2
OTHERS = 3
IF SY-SUBRC = 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
WRITE: 'TABLE IS LOCKED'.
ELSE.
SELECT * FROM MARA WHERE MATNR = MATNR.
WRITE:/ MARA-MATNR,MARA-ERNAM,MARA-MTART.
ENDSELECT.
ENDIF. -
1494 ERROR: xa_open() - failed to get shared memory
Hi,
I am getting the following error when I try to create a Q Space with number of
messages in it as 5,00,000. But if I try the same for 4,00,000 messages, it is
successful.
I checked the Shared memory in the machine and it is much more than it is required
for 5,00,000 messages Q Space.
Do I need to tune any other operating system parameter ?
1494 ERROR: xa_open() - failed to get shared memory, key = key, errno = errno
Description
While opening the queue space, xa_open() was unable to get the necessary shared
memory. The error number, errno, is printed in the message.
Action
This failure can be caused by a number of reasons but the most likely is that
either the amount of shared memory requested would cause an operating system tunable
to be exceeded (shared memory for the system or shared memory identifiers), or
another application is using the same key. Determine and correct the problem.
Thanks
VipulPeter,
the errno value is 22
thanks
Vipul.
Peter Holditch <[email protected]> wrote:
vipul,
What errno value did you get when you saw this message?
Regards,
Peter.
vipul wrote:
Hi,
I am getting the following error when I try to create a Q Space withnumber of
messages in it as 5,00,000. But if I try the same for 4,00,000 messages,it is
successful.
I checked the Shared memory in the machine and it is much more thanit is required
for 5,00,000 messages Q Space.
Do I need to tune any other operating system parameter ?
1494 ERROR: xa_open() - failed to get shared memory, key = key, errno= errno
Description
While opening the queue space, xa_open() was unable to get the necessaryshared
memory. The error number, errno, is printed in the message.
Action
This failure can be caused by a number of reasons but the most likelyis that
either the amount of shared memory requested would cause an operatingsystem tunable
to be exceeded (shared memory for the system or shared memory identifiers),or
another application is using the same key. Determine and correct theproblem.
Thanks
Vipul -
Shared memory (System V-style) - High usage of phys memory and page outs
Hi!
I get a much higher usage of physical memory when I use shared memory than I would expect. Please, I would really need someone to confirm my conclusions, so that I can revise my ignorance in this subject.
In my experiments I create a shared memory segment of 200 MB and I have 7 processes attaching to it. I have a ws of 1 GB.
I expect to see what I see when I attach to the shared memory segment in terms of virtual size, i.e. SIZE in prstat. After attaching (mapping it) to the process all 7 processes are about ~203 MB each and this makes sense. RSS, in prstat, is about 3 MB for each process and this is ok to me too.
It is what I see when each of the 7 processes start to write a simple string like 'Hello!' in parallel to each page in their shared memory segment that I get surprised. I run out of memory on my ws after a while and the system starts to wildly page out physical memory to disk so that the next 'Hello!' can be written to the next page in the shared memory segment. It seems that each page written to in the shared memory chunk is mapped into each process private address space. This means that the shared memory is not physically shared, just virtually shared. Is this correct?
Can memory be physically shared, so that my 7 processes only use 200 MB? ISM? DISM?
I create a shared memory segment in a C-program with the following calls:
shmid = shmget(key, SHM_SIZE, 0644 | IPC_CREAT)
data = shmat(shmid, (void *)0, 0);Thanks in advance
/SuneYour problem seemed reasonable. What were you doing wrong?
Darren -
How is new Mac mini's shared video memory limited?
If I upgrade my memory, say from 1GB to 4GB, will the limit of shared memory size be raised?
You've actually posted in the iPod Mini forum.
Look here for the Mac Mini forum:
http://discussions.apple.com/category.jspa?categoryID=158
Best of luck. -
Error message: ORA-27125: unable to create shared memory segment Linux-x86_
Hi,
I am doing an installtion of SAP Netweaver 2004s SR3 on SusE Linux 11/Oracle 10.2
But i am facing the follow issue in Create Database phase of SAPInst.
An error occurred while processing service SAP NetWeaver 7.0 Support Release 3 > SAP Systems > Oracle > Central System > Central System( Last error reported by the step :Caught ESAPinstException in Modulecall: ORA-27125: unable to create shared memory segment Linux-x86_64 Error: 1: Operation not permitted Disconnected
Please help me to resolve the issue.
Thanks,
NishithaHi Ratnajit,
I am too facing the same error but my ORACLE is not starting,
Here are my results of following command:
cat /etc/sysctl.conf
# created by /sapmnt/pss-linux/scripts/sysctl.pl on Wed Oct 23 22:55:01 CEST 2013
fs.inotify.max_user_watches = 65536
kernel.randomize_va_space = 0
##kernel.sem = 1250 256000 100 8192
kernel.sysrq = 1
net.ipv4.conf.all.promote_secondaries = 1
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.neigh.default.gc_thresh1 = 256
net.ipv4.neigh.default.gc_thresh2 = 1024
net.ipv4.neigh.default.gc_thresh3 = 4096
net.ipv6.neigh.default.gc_thresh1 = 256
net.ipv6.neigh.default.gc_thresh2 = 1024
net.ipv6.neigh.default.gc_thresh3 = 4096
vm.max_map_count = 2000000
# Modified for SAP on 2013-10-24 07:14:17 UTC
#kernel.shmall = 2097152
kernel.shmall = 16515072
# Modified for SAP on 2013-10-24 07:14:17 UTC
#kernel.shmmax = 2147483648
kernel.shmmax = 67645734912
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
And here is mine Limit.conf File
cat /etc/security/limits.conf
#<domain> <type> <item> <value>
#* soft core 0
#* hard rss 10000
#@student hard nproc 20
#@faculty soft nproc 20
#@faculty hard nproc 50
#ftp hard nproc 0
#@student - maxlogins 4
# Added for SAP on 2012-03-14 10:38:15 UTC
#@sapsys soft nofile 32800
#@sapsys hard nofile 32800
#@sdba soft nofile 32800
#@sdba hard nofile 32800
#@dba soft nofile 32800
#@dba hard nofile 32800
# End of file
# Added for SAP on 2013-10-24
# soft nproc 2047
# hard nproc 16384
# soft nofile 1024
# hard nofile 65536
@sapsys soft nofile 131072
@sapsys hard nofile 131072
@sdba soft nproc 131072
@sdba hard nproc 131072
@dba soft core unlimited
@dba hard core unlimited
soft memlock 50000000
hard memlock 50000000
Here is mine cat /proc/meminfo
MemTotal: 33015980 kB
MemFree: 29890028 kB
Buffers: 82588 kB
Cached: 1451480 kB
SwapCached: 0 kB
Active: 1920304 kB
Inactive: 749188 kB
Active(anon): 1136212 kB
Inactive(anon): 39128 kB
Active(file): 784092 kB
Inactive(file): 710060 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 33553404 kB
SwapFree: 33553404 kB
Dirty: 1888 kB
Writeback: 0 kB
AnonPages: 1135436 kB
Mapped: 161144 kB
Shmem: 39928 kB
Slab: 84096 kB
SReclaimable: 44400 kB
SUnreclaim: 39696 kB
KernelStack: 2840 kB
PageTables: 10544 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 50061392 kB
Committed_AS: 1364300 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 342156 kB
VmallocChunk: 34359386308 kB
HardwareCorrupted: 0 kB
AnonHugePages: 622592 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 67584 kB
DirectMap2M: 33486848 kB
Please let me know where i am going wrong.
Wat thing basically u check on /proc/meminfo command
Regards,
Dipak -
Standard Edition Memory Limitations
What is the upper memory limitation for the SGA size when using Standard Edition 9.x on Windows 2000?
What about Enterprise?According what I know the SGA in one OS is limited by the OS and the parameter SGA_MAX_SIZE. I have never heard that SGA has limitations related to the license.
SGA_MAX_SIZE
Parameter type
Big integer
Syntax
SGA_MAX_SIZE = integer [K | M | G]
Default value
Initial size of SGA at startup, dependent on the sizes of different pools in the SGA, such as buffer cache, shared pool, large pool, and so on.
Parameter class
Static
Range of values
0 to operating system-dependent
SGA_MAX_SIZE specifies the maximum size of SGA for the lifetime of the instance.
http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96536/ch1190.htm#REFRN10198
Joel P�rez -
Oracle 11g problem with creating shared memory segments
Hi, i'm having some problems with the oracle listener, when i'm trying to start it or reload it I get the follow error massages:
TNS-01114: LSNRCTL could not perform local OS authentication with the listener
TNS-01115: OS error 28 creating shared memory segment of 129 bytes with key 2969090421
My system is a: SunOS db1-oracle 5.10 Generic_144489-06 i86pc i386 i86pc (Total 64GB RAM)
Current SGA is set to:
Total System Global Area 5344731136 bytes
Fixed Size 2233536 bytes
Variable Size 2919238464 bytes
Database Buffers 2399141888 bytes
Redo Buffers 24117248 bytes
prctl -n project.max-shm-memory -i process $$
process: 21735: -bash
NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT
project.max-shm-memory
privileged 64.0GB - deny
I've seen that a solution might be "Make sure that system resources like shared memory and heap memory are available for LSNRCTL tool to execute properly."
I'm not exactly sure how to check that there is enough resources?
I've also seen a solution stating:
"Try adjusting the system-imposed limits such as the maximum number of allowed shared memory segments, or their maximum and minimum sizes. In other cases, resources need to be freed up first for the operation to succeed."
I've tried to modify the "max-sem-ids" parameter and set it to recommended 256 without any success and i've kind of run out of options what the error can be?
/RegardsI see, I do have the max-shm-ids quite high already so it shouldn't be a problem?
user.oracle:100::oracle::process.max-file-descriptor=(priv,4096,deny);
process.max-stack-size=(priv,33554432,deny);
project.max-shm-memory=(priv,68719476736,deny) -
Solaris 10 shared memory config/ora 11g
The ora 11 install guide for spark solaris 10 is very confusing wrt shared memory and my system does not seem to using memory correctly, lots of swapping on an 8GB real memory system.
The doc says to set /etc/system to:
shmsys:shminfo_shmmax project.max-shm-memory 4294967296
but infers that this is not used.
Then, the doc states to set a project shared mem value of 2GB:
# projmod -sK "project.max-shm-memory=(privileged,2G,deny)" group.dba
Why is this number different?
By setting to to 2G as documented oracle did not work at all and so I found Note:429191.1
on the solaris 10 memory which hints that these numbers should be big:
% prctl -n project.max-shm-memory -r -v 24GB -i project oracle_dss
% prctl -n project.max-shm-memory -i project oracle_dss
project: 101: oracle_dss
NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT
project.max-shm-memory
privileged 24.0GB - deny -
system 16.0EB max deny
Is there some logic in how to get solaris 10/ora 11 to hold hands. The install doc does not seem to contain it.system does not seem to using memory correctly, lots of swapping on an 8GB real memory system.We could start (for example) with this question - How big is your SGA or how much of 8GB RAM takes your SGA?
The doc says to set /etc/system to:
shmsys:shminfo_shmmax project.max-shm-memory 4294967296
but infers that this is not used.From documentation:
In Solaris 10, you are not required to make changes to the /etc/system file to implement the System V IPC. Solaris 10 uses the resource control facility for its implementation. However, Oracle recommends that you set both resource control and /etc/system/ parameters. Operating system parameters not replaced by resource controls continue to affect performance and security on Solaris 10 systems.
Then, the doc states to set a project shared mem value of 2GB:
# projmod -sK "project.max-shm-memory=(privileged,2G,deny)" group.dba
Why is this number different?It's an example how "To set the maximum shared memory size to 2 GB"
By setting to to 2G as documented oracle did not work at all Docs says:
On Solaris 10, verify that the kernel parameters shown in the following table are set to values greater than or equal to the recommended value shown.
If your SGA was greater than 2G I'm nor wondering why "oracle did not work at all".
So for 4GB SGA (for example) you need allow allocation of 4G of shared memory.
Note: shmsys:shminfo_shmmax != project.max-shm-memory. "project.max-shm-memory" is replacement of "shmsys:shminfo_shmmax" but function of these parameters differs.
"project.max-shm-memory resource control limits the total amount of shared memory of one project, whereas previously, the shmsys:shminfo_shmmax parameter limited the size of a single shared memory segment."
Relevant link to Sun docs: http://docs.sun.com/app/docs/doc/819-2724/chapter1-33 -
Shared memory in solaris 10 with oracle
Hi, I am a newbie to solaris and i have some questions on shared memory, Oracle in Solaris
My Questions might seem different, however please do read and try to answer. Thanks in advance.
1) if a solaris server has say 40gb of Ram, what would be the maximum size of a shared memory segment in this machine?
I know that if the server has 40GB. then max shared memory size is 10GB i.e. one fourth of ram, however not sure
2) What is the maximum size of a shared memory segment in solaris that a root user can define.
+ i know that its some where near 14 GB not very sure +
3) Assume i have created a user X and i allocated say 10GB limit for this user for shared memory.
I login to solaris using X and now, can i increase the size of the shared memory that this user can use?
I have a situation, where the root user, created a user named DBA and the root user allocated some 15gb for this DBA user as the max SHM limit.
Now the DBA user has set the max limit for shared memory as 1TB, which is causing hell of problems in the system.
* I am Not very sure on the concept. I am new to this product and facing this problem. please advice.*
+ Thanks +
Krishnakanth (Simply KK)Not sure why your "oracle" user (owner who will be creating the instance) has been assigned the project user.root. I would say create a seperate project may be "dba" and give access to this project to the owner of the user who will be creating the oracle instance.
and then try to issue the command:
prctl -n project.max-shm-memory -v 8gb -r -i project dba
and check to see if you are still facing a problem?
Edited by: somjitdba on Apr 2, 2009 9:54 PM -
Increase shared memory by IGD (intel HD)
when will the shared memory for intel HD graphics processor can be increase more than 256MB? some motherboard with some brand can assign until 1GB of RAM to the integrated graphic. future BIOS development should focus on this matter.
thank you
azuanQuote from: azuan on 07-October-13, 10:32:54
the reason i asked is because the 'manual allocation' in the bios menu only limited to 256MB only.
The BIOS has no control over the video memory.
That 64/128/256 MB value is a legacy and it means the reserved system RAM for GPU.
Most of the GPUs don't need more than 64MB to operate properly.
But it's better to give them 128 or 256MB.
Why?
The "plug & play" (automatic allocation) mechanism was never a perfect one.
Two devices sharing the same I/O addressing space might lead to conflicts and system crashes.
You don't want another device to share system RAM with your GPU.
For this reason it's much better to "lock" that RAM area and to reserve it for the GPU.
Coming back to video memory, that will be allocated much later (after the OS is loaded) by the GPU.
Intel Dynamic Video Memory Technology is used for that.
Depending on the GPU, installed system RAM and application demand, up to 1.7 GB system RAM can be reserved as video memory.
Edited:
http://www.intel.com/support/graphics/sb/CS-029090.htm
Up to 1.7GB usable video memory for HD 2000, 3000, 4000 and 4600 (all the Gen 2/Gen 3/Gen 4 Intel processors). -
SHARED MEMORY 문제(ORA-7329, ORA-7331, ORA-7279)
제품 : ORACLE SERVER
작성날짜 : 2004-07-22
SHARED MEMORY 문제(ORA-7329, ORA-7331, ORA-7279)
================================================
PURPOSE
다음은 shared memory 문제가 발생하는 경우(ora-7329,ora-7331,
ora-7279) 에 대해서 알아본다.
Explanation
1. 왜 Problem 이 생기나?
* Oracle 은 Process와 SGA(System Global Area) 간의
Communication를 위해 Shared Memory와 Semaphore 를 사용한다.
Oracle Instance 가 뜰 때 SGA를 Create하기 위해 Main Memory의
임의의 부분을 할당하는데 이 때 Shared Memory 나 Semaphore 가
적절하지 않으면 이에 관련한 Error가 발생한다.
2. 해결 방안
SGA는 Shared Memory 안에 생기므로 Shared Memory 는 각 Process에게
사용 가능해야 한다.
Shared memory 와 Semaphore parameter 는
- SHMMAX = 1개의 shared memory segment 의 maximum size,
SGA 크기 이상
- SHMMIN = 1개의 shared memory segment 의 minimum size, 1 byte
- SHMMNI = shared memory identifier의 숫자, 100 이상
- SHMSEG = 1개의 process에 attach되는 shared memory segment의
maximum 갯수, 10 이상
- SEMMNS = system의 semaphore 갯수, 200 이상
- SEMMNI = 시스템에서 identifier를 setting하는 semaphore 수,
70 이상
- SEMMSL = semaphore set 당 최대 semaphore 갯수,
initSID.ora 의 processes 값 이상
* 추천하는 Semaphore와 Shared Memory Parameter
Operating System Shared Memory Parameters Semaphore
================================================================
Sun OS
SHMSIZE = 32768 SEMMNS = 200
SHMMNI = 50 SEMMNI = 50
Solaris
SHMMAX = 8388608 SEMMNS = 200
SHMSEG = 20 SEMMSL = 50
SHMMNI = 100 SEMMNI = 70
HP/UX
SHMMAX = 0x4000000(64Mb) SEMMNS = 128
SHMSEG = 12 SEMMNI = 10
Digital Unix (DEC Alpha OSF/1)
SHMMAX = 4194304 SEMMNS = 60
SHMSEG = 32 SEMMSL = 25
Ultrix Use System Default SEMNS SEMMSL = 5
AT&T Unix
SHMMAX = RAM-Dependant SEMMNS = 200
8 or 16Mb RAM
SHMMAX = 5 Mb For All RAM
32 Mb RAM
SHMMAX = 8 Mb Values
64 Mb RAM
SHMMAX = 16 Mb
128 Mb RAM
SHMMAX = 32 Mb
256 Mb RAM
SHMMAX = 64 Mb
512 Mb RAM
SHMMAX = 128 Mb
1024 Mb RAM
SHMMAX = 256 Mb
2048 Mb RAM
SHMMAX = 512 Mb
SHMSEG = 6 for all RAM Values
SHMMIN = 1 for all RAM Values
Dynix/PTX
SHMMAX = 11010048 SEMMNS = 200
SHMSEG = 20 SEMMSL = 85
Other Parameter NOFILES = 128
DG/UX
SHMMAX = 4194304 SEMMNS = 200
SHMSEG = 15
Shared Memory 와 Semaphore Parameter는 OS 의 Kernel Configuration
화일에 반드시 지정되어야 하며, File의 위치는 OS마다 차이가 있다.
현재의 Shared Memory 와 Semaphore Configuration 을 알기 위해서는
다음의 Command를 이용한다.
$ sysdef |more
* HP-UX (relevant sections only) 에서의 예:
Semaphore 관련 Parameters
- maximum value for semaphores(semaem)= 16384
- Semaphore map(semmap)= 4098
- number of semaphore identifiers(semmni) = 4096
- total number of semaphores in the system(semmns) = 8192
- number of semaphore undo structures(semmnu) = 1536
- semaphore undo entries per process(semume) = 512
- semaphore maximum value(semvmx) = 32767
Shared Memory 관련 Parameters
- maximum shared memory segment size in bytes(shmmax) = 536870912
- minimum shared memory segment size in bytes(shmmin) = 1
- maximum shared memory segments in system (shmmni) = 512
- maximum shared memory segments per process(shmseg) = 512
NOTE: SHMMAX는 현 system에 8개의 instance가 수행될 수 있는
충분한 값이다.
* Shared memory 또는 semaphore parameters 를 변경하기 위해서는 ...
1. Oracle Instance를 Shutdown 한다.
2. OS의 Kernel Configuration File이 있는 곳으로 간다.
3. System Utility 또는 Editor를 이용해서 필요한 값을 바꾼다.
System Utility는 다음과 같다
| OS | Utility |
| HP/UX | SAM |
| SCO | SYSADMSH |
| AIX | SMIT |
| Solaris | ADMINTOOL |
4. Kernel 을 Reconfigure 한다.
5. System을 Reboot 한다.
6. Oracle Instance를 startup시킨다.
[ 예제 ] Solaris 2.3/2.4 parameters and commands:
1. SQLDBA 에서 :
SQLDBA> shutdown
SQLDBA> exit
2. Superuser(root)로 login 하고 :
# cd /etc
3. /etc/system file 에 다음을 추가 한다:
set shmsys:shminfo_shmmax=8388608
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=20
set semsys:seminfo_semmns=200
set semsys:seminfo_semmni=70
4. Kernel을 reconfigure 한다:
# touch /reconfigure
5. Machine 을 reboot 한다:
#init 6
6. SQLDBA 에서 :
SQLDBA> startup
SQLDBA> exit
Oracle의 init<SID>.ora 파라미터 화일에는 SGA에 영향을 주는
Parameter들이 있다. OS의 Shared Momory와 Semaphore Parameter에
연결된 이 Parameter의 setting은 System과 Oracle의 Performance에
중요한 영향을 미친다.
Reference Documents
<Note:1011658.6>system does not seem to using memory correctly, lots of swapping on an 8GB real memory system.We could start (for example) with this question - How big is your SGA or how much of 8GB RAM takes your SGA?
The doc says to set /etc/system to:
shmsys:shminfo_shmmax project.max-shm-memory 4294967296
but infers that this is not used.From documentation:
In Solaris 10, you are not required to make changes to the /etc/system file to implement the System V IPC. Solaris 10 uses the resource control facility for its implementation. However, Oracle recommends that you set both resource control and /etc/system/ parameters. Operating system parameters not replaced by resource controls continue to affect performance and security on Solaris 10 systems.
Then, the doc states to set a project shared mem value of 2GB:
# projmod -sK "project.max-shm-memory=(privileged,2G,deny)" group.dba
Why is this number different?It's an example how "To set the maximum shared memory size to 2 GB"
By setting to to 2G as documented oracle did not work at all Docs says:
On Solaris 10, verify that the kernel parameters shown in the following table are set to values greater than or equal to the recommended value shown.
If your SGA was greater than 2G I'm nor wondering why "oracle did not work at all".
So for 4GB SGA (for example) you need allow allocation of 4G of shared memory.
Note: shmsys:shminfo_shmmax != project.max-shm-memory. "project.max-shm-memory" is replacement of "shmsys:shminfo_shmmax" but function of these parameters differs.
"project.max-shm-memory resource control limits the total amount of shared memory of one project, whereas previously, the shmsys:shminfo_shmmax parameter limited the size of a single shared memory segment."
Relevant link to Sun docs: http://docs.sun.com/app/docs/doc/819-2724/chapter1-33 -
Shared memory settings from 32 to 64 bit Oracle
Hello,
Questions about Oracle and Shared Memory from 32bit to 64bit Oracle
I have a Sun Sparc V880 server running Solaris 9 with 8xCPUs and 16gb of Ram. It is currently running 6 Oracle (32 bit) 9.2 databases which we are planning to upgrade to 10.2. My question regards the setting of the Solaris 9 kernel parameters speciifically 'shminfo_shmmax'. This is currently set to - 'shmsys:shminfo_shmmax=4294967295'which I believe is the maximum amount of shared memory which can be allocated to a 32bit version of Oracle and the one recommended by Oracle.
Running 'show sga' on all of the current 9.2 databases returns
Total System Global Area
DB SGA(bytes)
db1 772528008
db2 789305244
db3 772528008
db4 114021228
db5 791238556
db6 789305244
Total = 4045703524 bytes or 3.76786 gb.
1. Does this mean that each Oracle 32bit database can only use up to a maximum of about 4gb of shared memory or that all 6 together can only use up to 4gb ? resulting in 12gb being available for other (non Oracle) processes.
2. I have noticed (through 'sar' stats) that the server occasionally pages (non zero values for pgscan/s and pgfree/s etc.). Since the server mostly only runs the Oracle databases, is this because Oracle can only use circa 4gb of Ram before it starts paging ?
3. If both 9.2 and 10.2 Oracle databases are run on the server would increasing the value of shminfo_shmmax then allow the 10.2 databases to use more of the 16gb of Ram, while still limiting the 32bit databases to the 4gb limit ?
Any help here would be appreciatedPl see if MOS Doc 467960.1 (How Important It Is To Set shmsys:shminfo_shmmax Above 4 GB) and the notes it references can help
HTH
Srini -
SAPOSCOL Problems with Shared Memory
Has anyone had any problems in either starting the saposcol or with keeping it running? We have noticed multiple problems for several years now, and are at a point where the saposcol is not running at all on any of our servers, nor can we start it running.
We're seeing "SAPOSCOL not running ? (Shared memory not available)". I am working with SAP with two different customer messages trying to determine why we cannot start the saposcol.
Does anyone have any ideas?
Thanks,
Traci Wakefield
CV IndustriesI do have entries in the os-collector log:
SAPOSCOL version COLL 20.89 640 - AS/400 SAPOSCOL Version 18 Oct 2005, 64 bit, single threaded, Non-Unicode
compiled at Nov 26 2005
systemid 324 (IBM iSeries with OS400)
relno 6400
patch text COLL 20.89 640 - AS/400 SAPOSCOL Version 18 Oct 2005
patchno 102
intno 20020600
running on CENTDB1 OS400 3 5 0010000A1E1B
13:25:06 28.02.2007 LOG: Profile : no profile used
13:25:06 28.02.2007 LOG: Saposcol Version : [COLL 20.89 640 - AS/400 SAPOSCOL Version 18 Oct 2005]
13:25:06 28.02.2007 LOG: Working directory : /usr/sap/tmp
13:26:01 28.02.2007 LOG: Shared Memory Size: 339972.
13:26:01 28.02.2007 LOG: INFO: size = (1 + 60 + 3143) * 106 + 348.
13:26:01 28.02.2007 LOG: Connected to existing shared memory.
13:26:01 28.02.2007 LOG: Reused shared memory. Clearing contents.
13:26:04 28.02.2007 LOG: Collector daemon started
13:26:04 28.02.2007 LOG: read coll.put Wed Feb 28 13:22:01 2007
13:26:04 28.02.2007 LOG: Collector PID: 2469
13:27:05 28.02.2007 LOG: Set validation records.
14:00:32 28.02.2007 WARNING: Out of int limits in pfas41c1.c line 1528
12:58:37 10.03.2007 LOG: Stop Signal received.
12:58:38 10.03.2007 LOG: ==== Starting to deactivate collector ==========
12:59:01 10.03.2007 LOG: ==== Collector deactivated ================
Also, I have tried saposcol -d (and other parameters below):
saposcol -d
kill
clean
leave
quit.
delete the files coll.put, dev_coll"
4" From my open SAP message:
I have also done the following:
1 Check the authorizations of SAPOSCOL as mentioned in SAP Notes:
637174 SAPOSCOL cannot access Libraries of different SAP systems
175852 AS/400: Authorization problems in SAPOSCOL
2 Remove the shared memory (coll.put)
(according to SAP Note: #189072). You could find 'coll.put' in path:
'/usr/sap/tmp'.
3 End the following jobs in QSYSWRK:
QPMASERV, QPMACLCT, QYPSPFRCOL and CRTPFRDTA
4 Delete the temporary user space:
WRKOBJ OBJ(R3400/PERFMISC) OBJTYPE(USRSPC)
Afterwards you could start SAPOSCOL on operating system level.
Just logon to iSeries as <SID>OFR and run the following command:
SBMJOB CMD(CALL PGM(<kernel_lib>/SAPOSCOL) PARM('-l'))
JOB(SAPOSCOL) JOBQ(R3<SID>400/R3_<nn>)
LOG(4 0 SECLVL) CPYENVVAR(YES)
Thanks,
Traci"
Maybe you are looking for
-
Can't Create Contract From RFx Response (SAP SRM 7.0)
Dear Expert, Could you help me, i have create rfx, response the rfx and accepted the rfx response. After i have accepted that RFx, i would like to make a contract from this RFx response. Via menu Create Contract. But this error is show up. Error appl
-
IPhone 5 screen is black, when I connect to ITunes it says "to allow access please respond to your Iphone". Impossible with a black screen, does anyone know what the prompt is?
-
I have just installed a second CRS 5.0(2) server which I intend to add to the cluster, but I'm having a problem in that the Node Manager Service hangs on startup. The error I get is: Event ID:7022 The CRS Node Manager Service Hung on starting. I can
-
Hi All ! I want to clear_form on F5 key press event to do so I have return clear_form(no_validate) on KEY-F5 trigger. But it is not fired when we press F5 key why is it so? Thanks Neeraj Tyagi
-
Browsers can't find server (Internet) randomly
On iMac with Snow Leopard OS, Firefox randomly and for very short duration would tell me I was not connected to the Internet...except that I was and could access it seconds later. Uninstalled Firefox and tried using just Safari. Same problem, rando