SGA, PGA and SHMMAX Setting

If I have set SHMMAX to 8GB (on 64bit linux) value, does that mean that my SGA+PGA values need to remain within 8GB limit? If my SGA size is 6GB and PGA size is 4GB, does that mean that my OS is going to allocate two shared memory segments?

The SHMMAX parameter is used to define the maximum size (in bytes) for a shared memory segment and should be set large enough for the largest SGA size.
http://www.idevelopment.info/data/Oracle/DBA_tips/Linux/LINUX_8.shtml
http://books.google.co.in/books?id=2ImPFP6Yk64C&pg=PA357&lpg=PA357&dq=PGA+is+included+in+SHMMAX&source=bl&ots=On3S7-CEX0&sig=LhOYOO946hrPZh-cIUEzWNiwpRg&hl=en&ei=xyLOTJqaC4yYvAONm7T3Dw&sa=X&oi=book_result&ct=result&resnum=5&ved=0CCwQ6AEwBA#v=onepage&q&f=false
Please close the thread as answered.

Similar Messages

  • Queries regarding SGA, PGA and parsed SQL Queries

    Hi
    I am new to Oracle server architecture.
    Please correct me if am wrong.
    As per my understanding, the data that we retrieve from a SQL query is stored in SGA in Database buffer cache.
    I have some queries:
    1. Does the database buffer cache store only data from SQL queries or anything else also? What is its size? Can we set the size?
    2. Where are the parsed SQL queries stored - SGA or PGA? And where exactly? I want to know if all the users connected in an Instance have access to each other's parsed SQL queries?
    3. SGA is shared by all users in an Oracle Instance? PGA and UGA are local to a specific user in an instance? Is it correct?
    Thanks
    Abhi

    AB312062 wrote:
    Hi
    I am new to Oracle server architecture.
    Please correct me if am wrong.
    As per my understanding, the data that we retrieve from a SQL query is stored in SGA in Database buffer cache.
    I have some queries:
    1. Does the database buffer cache store only data from SQL queries or anything else also? What is its size? Can we set the size?
    2. Where are the parsed SQL queries stored - SGA or PGA? And where exactly? I want to know if all the users connected in an Instance have access to each other's parsed SQL queries?
    3. SGA is shared by all users in an Oracle Instance? PGA and UGA are local to a specific user in an instance? Is it correct?
    Thanks
    AbhiThe questions you have are all good ones, but require far too much to be explained (properly) in a forum such as this.
    I would highly recommend picking up a book by Tom Kyte and reading through that.
    Cheers,

  • SGA, PGA and... little extra?

    Will oracle process use some extra "non oracle" memory for OS related stuff?
    Mean, not considering SGA, I connect a database process and I see:
    SQL> select p.program,
      2  p.spid, pm.category, pm.allocated/1024 allocated, pm.used/1024 used, pm.max_allocated/1024 max_allocated
      3  from V$PROCESS p, V$PROCESS_MEMORY pm
      4  where p.pid = pm.pid
      5  and p.spid =2650;
                                                                                                            Max
                                                                              Allocated       Usedd   allocated
    PROGRAM                        SPID                     CATEGORY                 Kb          Kb          Kb
    oracle@uxlabhost11             2650                     SQL                      14           9          42
    oracle@uxlabhost11             2650                     PL/SQL                   56          34          57
    oracle@uxlabhost11             2650                     Other                  1501                    1501That's allocated PGA after having connected and done nothing else
    So it somehow allocated 1.4 Mb upon start-up...
    Now question is. Do oracle processes use OS memory which cannot be considered as SGA or PGA?
    Reason being my trying to estimate memory needs for a database server. Many I've read correct formula should be SGA + max allocated PGA + some_extra_just_in_case...
    Is there an estimate on how much that "some_extra_just_in_case" would be per process?
    If OS dependent, I'm implementing on RHEL 6...
    thanks

    So, I've used pmap...
    Got 257 enties in the form "4096K rw-s- /dev/shm/"
    since we are using AMM , that should do for PGA and SGA ... some 1052672 Kb, which process is attached to...
    yet pmap then continues to display other entries....
    0000002a95557000      4K r-x--  /opt/oracle/product/11g/lib/libodm11.so
    0000002a95558000   1024K -----  /opt/oracle/product/11g/lib/libodm11.so
    0000002a95658000      4K rw---  /opt/oracle/product/11g/lib/libodm11.so
    0000002a95659000      4K rw---    [ anon ]
    0000002a9565a000    392K r-x--  /opt/oracle/product/11g/lib/libcell11.so
    0000002a956bc000   1024K -----  /opt/oracle/product/11g/lib/libcell11.so
    0000002a957bc000     40K rw---  /opt/oracle/product/11g/lib/libcell11.so
    0000002a957c6000      4K rw---    [ anon ]
    0000002a957c7000    864K r-x--  /opt/oracle/product/11g/lib/libskgxp11.so
    .. TRUNCATED...
    0000003fb810a000     64K rw---    [ anon ]
    0000003fbbd00000     84K r-x--  /lib64/libnsl-2.3.4.so
    0000003fbbd15000   1020K -----  /lib64/libnsl-2.3.4.so
    0000003fbbe14000      4K r----  /lib64/libnsl-2.3.4.so
    0000003fbbe15000      4K rw---  /lib64/libnsl-2.3.4.so
    0000003fbbe16000      8K rw---    [ anon ]
    0000007fbffde000    136K rwx--    [ stack ]
    ffffffffff600000      4K r-x--    [ anon ]
    total          1276452KNotice "total 1276452K"
    So you saying non SGA/PGA would be 1276452 - 1052672?
    That would be too much... yet if pmap another process, almost all flags (hex column) but [ stack ] are the same....
    So how to tell which of those are shared and which are "exclusive" to the process, i.e: The "some extra just in case" mem...
    thanks

  • Analysis sga/pga growth

    Hi,
    We using oracle version 11.2.0.1 on AIX 6 and we using OEM.
    I am asked to gather last one week stats (high level and lower level in a day)for tablespace,SGA,PGA and resource_limit ,open_cursor parameter.
    How to collect it.Is there any query to find it ?
    Thanks,

    922884 wrote:
    Hi,
    Thanks for your repsonse.
    Architect asking that.
    Can i use DBA_HIST_SGA ,DBA_HIST_SGAstat for sga and DBA_HIST_TBSPC_SPACE_USAGE ,DBA_HIST_TABLESPACE_STAT for tablespace.
    could you tell for resource_limit and open_cursor.How to collect those values ?
    ThanksWhen you start with the wrong question, no matter how good an answer you get, it won't matter very much.
    Do you realize that OPEN_CURSOR is a per session limit?

  • Kernel para and sga,pga sizing

    Hello,
    OS-HP-UX(configured to use high sga /no restrictions)
    Current database is running without any issue
    Due to increase in physical ram i plan to increase sga and pga(ram is increase about 3 times)
    My question:
    1)should i also increase sga and pga in same propotion (3 times then existing)
    or use 70% ROT formula
    2)whatever figure i arrive by analysis for increasing sga,do i need to change kernel parameters also
    (does i requre to change kernel parameter every time ram and sga is increased)
    Please suggest
    Thanks

    880991 wrote:
    Ok some questions based on your reply:
    1)then how any gain in upgrading memory above 4 GB if shmmax cannot be more then 4 GB (32 bit OS),then
    SGA also cannot be > 4GB (As per documents SHMMAX should be > SGA)Because the SGA doesn't have to be in one segment. Which version of Oracle are you looking at? It makes a difference!
    http://kevinclosson.wordpress.com/2009/07/27/little-things-doth-crabby-make-part-x-posts-about-linux-hugepages-makes-some-crabby-it-seems/
    >
    2)I read if Operating system is linux can use SGA above 4GB,in fact one of friend told they implemented SGA
    4GB on linux configuring VLM/Huge pages,so in that case ( VLM ) needs to set SHMMAX > 4GB (as per memory ROT) of VLM take cares of SGA > 4GB even if SHMMAX is not setintrestingly my friend also mentioned that in there server VLM is set and shmmax is set < 4 GB and SGA > 4GB
    still it works without problem when checking SGA usage in dyanamic views its shown as using above 4 GB
    ,it contradicts what i read in documents,how this is working ,anyone have idea?[url http://download.oracle.com/docs/cd/B28359_01/server.111/b32009/appi_vlm.htm]No contradiction.
    Also VLM implementation is restricted to Linux or it can be on set on Unix as well and if its set do all components
    of SGA benefit or only buffer cache?
    ThanksIt varies, some unix are quite different than others. Specific answers can only be given to specific configurations. I really have to wonder when you are asking about hp-ux and 32 bit.

  • Pga and sort area size both are set in parameter file

    Hello,
    Both the pga and sort area size are set in the parameter file. Is this an issue? Are there conflicts? Can both be set and only pga will take effect? Db is 10.1.0.5.

    hi,
    might also be worth looking at metalink note Note:223730.1
    rgds
    Alan

  • Change a size of PGA and SGA

    Hi,
    I have a plan to increase size of PGA and SGA. Please recommend me which metric in Statspack report I should monitor to check what is the impact of such change.
    Best.

    Hi Lesak;
    Please check below 2 thread:
    How we size SGA
    Re: Estimating SGA Size
    SGA and PGA size
    SGA and PGA size
    Regard
    Helios

  • Difference between UGA, PGA and SGA in oracle

    please tell me what is the difference between UGA, PGA and SGA in oracle in the simple layman language
    thanx in advance

    UGA
    The User Global Area (UGA) is a memory area (RAM) that holds session-based information.
    Shared Server Area
    When running in [[Shared Server]] mode (MTS with shared servers and dispatchers), sessions can be served by multiple server processes. As a result, the UGA cannot be stored in the [[PGA]], and is moved to the [[SGA]] (shared global area).
    Dedicated Server
    When running in [[Dedicated Server]] mode (one session = one dedicated process), the UGA is stored in the [[PGA]] (process global area).
    i have question......
    how to check and monitor the cpu usage ,temporary and memory usage in db?
    ple could any body explain me.................
    Edited by: 821205 on Dec 20, 2010 7:59 AM

  • Oracle 11g SGA & PGA setup

    Hi I installed oracle 11g & create database , now i want to use fully optimize database.
    Currently my DB server RAM is 16GB, how should i allocate SGA for this.If i used oracle 11g automatic memeory management feature to allocate SGA+PGA, how should i use them.Currentlymy SGA is set to 4GB, Please advise

    Hi,
    It is depends upon the workload which you have in your organization(future and present situation)
    SGA+PGA size will be automatically managed by Oracle. No need to worry about this.
    If you need to increase Memory_Max_Size, you can also increase the Memory size in the future.
    Thanks

  • AWR SGA+ PGA usage

    Hi
    We're doing some performance testing on our database. The SGA is set to 1.5GB and PGA set to 0.5GB. At some point we are runnning out of memory as we ramp up the number of users and transactions .
    What I'm looking for is to graph the PGA and SGA usage seperately regular intervals (a line graph) showing their increaase as users ramp up.
    Anyone any ideas on how I can get this information whether through AWR or manually.
    Thanks in advance.

    You have not posted the version you are on. You should use automatic pga management and unset the values for areasize parameters (if there is no specific reason for keeping them).
    ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo read buffer)
    Doing block recovery for file 3 block 76812
    Resuming block recovery (PMON) for file 3 block 76812What are the OS level statistics of memory usage ?
    It simply means that Oracle (rather OS...as Oracle is also going to request memory from OS only) is running out of memory. Most common reason behind that is use of features like bulk collect without any limit clause which causes the pga memory to grow beyond pga_aggregate_target...and finally sucking all the memory available. Further requests for memory allocation start failing with ORA-04030.
    Also, please post the output from v$pgastat using tags.
    Edited by: amardeep.sidhu on Nov 24, 2010 9:29 AM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • SGA & PGA target

    Hi all,
    My questions is regarding how to set up SGA & PGA target values giving DB server is MS 2003 Enterprise 64 edition sever with 63 GB of RAM. Our DB’s version is 10.2.0.3 and RACed with 2 instances.
    Currently our setting for SGA is 23 GB and PGA is 4 GB. I ran the memory advisor it display different optimal values for those two instances (35 GB and 23 GB for SGA, 5 GB and 4 GB for PGA). Guess our db is not well balance loaded.
    I would like to know if there is any rule(s) that SGA can’t be more than certain percentage of total RAM for the server.
    Thanks a lot in advance.
    Have a great weekend!!
    Shirley

    Hi
    Here is my approach:
    1) consider free physical memory (meassure must be taken with Oracle down)
    2) substract a 10% of that amount as a margin
    3) if the box is exclusive for Oracle, the remaining amount may be your SGA+PGA limit
    4) if not is exclusive, then substract memory required for other services, then you'll get the SGA+PGA limit.
    5) Substract your PGA size, giving the SGA figure
    For instance
    59 Gb - 6 Gb = 53 Gb - 4 Gb = 49 Gb
    (63 Gb -4 Gb [estimated OS footprint + IO cache]) = 59 Gb free physical memory
    Setting PGA+SGA beyond the free physical memory figure, may lead to swaping and degraded system performance.
    Regards
    http://oracledisect.blogspot.com

  • SGA & PGA concept

    We have a production Oracle 11g DB in which SGA_TARGET is 0 but ASSM is enabled but the documentation on Oracle says that if SGA_TARGET is 0 means that ASSM is disabled. Also, PGA_AGGREGATE_TARGET is 0 but Maximum PGA allocated is around 1 GB.
    I hope, my question is clear that concept seems to be confusing where SGA_TARGET is 0 but ASSM is enabled and also PGA_AGGREGATE_TARGET is 0 but maximum PGA allocated is 1 GB.
    Please revert with the reply to my query.
    Regards

    972145 wrote:
    Thanks for your reply but there is some confusion. ASMM is automatic shared memory management which seems to be similar to AMM which is automatic memory management. ASMM can be seen from OEM under Database Configuration->Memory Advisors. I guess, there is ASM which is automatic storage management to do with reduntant copies of data to provide fault tolerance.
    ASMM - 10g setting for the automatic SGA using the parameter sga_target .
    AMM - 11g setting for both SGA and PGA, uses the parameter memory_target
    ASM - Automatic Storage Management, nothing to do with SGA or PGA
    ASSM - Automatic Segment Space Management, for the tables and nothing to do with the PGA and SGA
    Aman....
    Edited by: Aman.... on Jan 21, 2013 3:53 PM corrected the typo

  • SGA/PGA Sizes ???

    I need help!
    I have a Windows 2003 Server (w/sp2) with 4GB of RAM & 2 CPUs. Oracle 10.2.0.2 is installed.
    ASMM is ENABLED by default (and it still is)
    These are my sga/pga settings:
    pga_aggregate_target = 1G
    sga_max_size = 1504M
    sga_target = 1000M
    shared_pool_size = 504M
    sort_area_size = 262144000 (250M)
    large_pool_size = 104M
    db_cache_size = 104M
    I believe I should DISABLED ASMM, correct? Otherwise, my settings aren't used.
    Based on my 4GB, I think Oracle can use 2GB of that.
    What should I set the settings above too?
    ...thanks

    First if you use Oracle's automatic memory management feature and provide spfile parameter values for parameters that are automatically managed by Oracle then the provided values are taken as minimum values for these areas. There are other situations where values for parameters like sort_area_size which is limited to 5% of pga_aggregate_target are in fact still referenced.
    With a pga_aggregate_target of 1G I do not see any valid reason why you would have a sort_area_size set to 250M. What is the reason for this?
    What kind of environment is this: OLTP, DSS, OLAP?
    How many concurrent sessions?
    Dedicated vs shared server?
    Why do you not want to use automatic memory management? What problem have you encountered?
    HTH -- Mark D Powell --

  • SHMMAX setting on RHEL for 11gR2

    Hi ,
    Why does oracle recommend to set the max value of SHMMAX to 4GB on RHEL for 11gR2?
    " kernel.shmmax = 1/2 of physical RAM, *but not greater than 4GB*. This would be the value 2147483648 for a system with 4Gb of physical RAM"
    Untill 10gR2 I know that SHMMAX we set is the max. SGA that can be allocated on the system.
    In our environment with SHMMAX equal to 4Gb on a system with 64 GB of RAM, runs Oracle with SGA of 30GB without any issues.

    Sb,
    Check the link
    http://download.oracle.com/docs/cd/E11882_01/install.112/e10840/pre_install.htm#BABIAIED
    look under Section 2.9
    Thanks Sb and Forstmann.... I see multiple segments with ipcs...Any idea why has this SHMMAX setting changed with 11gR2?

  • What is the diffrence between PGA and UGA?

    Hi All
    Just one question
    "What is the diffrence between PGA and UGA?"
    Thanks

    PGA Memory
    The Program Global Area (PGA) is a memory region that contains data and control information for a single process (server or background). The PGA is made up of the following:
    Stack Space
    A PGA always contains a stack space, which is memory allocated to hold a session's variables, arrays, and other information.
    Session Information - (UGA)
    A PGA in an instance running without the multi-threaded server (named Shared Server in Oracle9i) requires additional memory for the user's session, such as private SQL areas and other information. If the instance is running the multi-threaded server, this extra memory is not in the PGA, but is instead allocated in the SGA (the Shared Pool).
    Shared SQL Areas
    Shared SQL areas are always in shared memory areas of the SGA (not the PGA), with or without the multi-threaded server.
    Non-shared and Writable
    The PGA is a non-shared memory area to which a process can write. One PGA is allocated for each server process; the PGA is exclusive to a server process and is read and written only by Oracle code acting on behalf of that process.
    UGA Memory
    The UGA, or User Global Area, is allocated in the PGA for each session connected to Oracle in a dedicated server environment. The PGA is memory allocated at the client to hold a stack which contains all of the session's variables, etc. In a Shared Server environment, Oracle allocates this memory in the Shapred Pool (the shared pool is contained in the SGA), for all sessions. This helps to reduce the PGA (client) memory footprint of Oracle, but will increase the SGA (shared pool) requirements.

Maybe you are looking for

  • Question about how wireless networks work

    Hello, This is more of a general question rather than one that is specific to the airport. I have a network with an Airport Express with wireless n, a Macbook Pro with a wireless n card, and a printer that has a wireless g card. Someone told me that

  • Apps are greyed out when syncing

    When syncing my son's iPod, the apps on the computer screen are greyed out.  The check mark is there, but it is greyed out as well so I am not able to select or deselect apps.  What it this and how do I fix it?

  • Sync from my Iphone to my laptop

    My desk computer is under repair I am glad that I have all my contacts (outlook) in my Iphone 3GS and its software is 4.3 I have a Vista Microsoft I need to transfer all my contacts, calendar, tasks from my Iphone to my Laptop. Please help me tell me

  • How do you save a masked product shot for a printed catalog?

    I have some catalog and packaging work and my graphic artist is on vacation (honeymoon) so I am on my own. I have masked a photographic image, what I can't seem to do is save it as a jpeg without saving the background color which is usually white. I

  • Oracle Reports 11g Intallation

    Hi, I'm planning a Reports 11g installation on a Solaris 10 (Sparc) and I'm in this kind of installation. I would like to install "Portal, Forms, Reports and Discoverer (11.1.1.2.0)". I've seen I need to install Web Logic Server before it. I've some