The influence of the 11g MEMORY_TARGET parameter on SGA and PGA is added to the 11g MEMORY_MAX_TARGET parameter. The first appearance of this parameter is as refreshing as the SGA_MAX_SIZE parameter appears in 10g. Memory_max_target is used to set the maximum memory space occupied by Oracle to OS, and the maximum memory space occupied by Oracle SGA. Undoubtedly, the 11 GB Oracle goes further toward automatic memory management. The sga_max_size of 10 Gb is dynamically allocated to the Shared Pool Size, database buffer cache, large pool, java pool, and redo log buffer, only the size of each memory block of SGA is re-allocated based on the Oracle running status. The. www.2cto.com 11g MEMORY_MAX_TARGET parameter needs to be set separately for the PGA in 10g. The parameter consists of two parts: System global area (SGA) and system global area (PGA ). Obviously, PGA and SGA can be dynamically managed at 11 GB. Let's take A look at the impact of Memory_target setting and not setting on SGA/PGA in 11g:: if Memory_target is set to a non-zero value (in the following four cases, the size of SGA and PGA is allocated) 1: the sga_target and pga_aggregate_target parameters have been set. If the sga_target and pga_aggregate_target parameters have been set in Oracle, these two parameters are allocated to the minimum values and their target values respectively.
Memory_Target = SGA_TARGET + PGA_AGGREGATE_TARGET. The size is the same as that of memory_max_size. 2: sga_target set size, pga_aggregate_target not set size so pga_aggregate_target initialization value = memory_target-sga_target 3: sga_target no set size, pga_aggregate_target set size so sga_target initialization value = memory_target-pga_aggregate_target 4: neither sga_target nor pga_aggregate_target set the Oracle 11g size.
If neither sga_target nor pga_aggregate_target is set, Oracle does not have the minimum and default values for these two values. Oracle allocates the size based on the database running status. However, when the database is started, a fixed proportion will be allocated: sga_target = memory_target * 60% pga_aggregate_target = memory_target * 40% www.2cto.com B: if Memory_target is not set or = 0 (0 by default in 11g) and the default value is 0 in 11g, Memory_target is disabled in the initial state, it is completely consistent with 10 Gb in memory management and completely backward compatible. (SGA and PGA are allocated in three cases)
1: When SGA_TARGET is set, the size of memory space such as shared pool, buffer cache, redo log buffer, java pool, and larger pool in SGA is automatically adjusted. PGA depends on the size of pga_aggregate_target. Sga and pga cannot automatically increase or decrease. 2: Neither SGA_target nor PGA_AGGREGATE_TARGET set the size of each component in SGA. The size of each component cannot be adjusted automatically. PGA cannot automatically increase or contract. 3: Set MEMORY_MAX_TARGET and MEMORY_TARGET = 0. In this case, it is the same as 10 Gb first, do not explain how to use the following SQL> show parameter target NAME TYPE VALUE generation ----------- character archive_lag_target integer generation integer 1440fast_start_io_target integer generation integer 0memory_max_target big integer 1024Mmemory_target big integer generation in 11g big integer 0sga_target big integer 0 www.2cto.com to monitor the situation of Memory_target, you can use the following three dynamic attempts: V $ MEMORY_DYNAMIC_COMPONENTS V $ MEMORY_RESIZE_OPS v $ memory_target_advice use the following Command to adjust the size: SQL> ALTER SYSTEM SET MEMORY_MAX_TARGET = 1024 M SCOPE = SPFILE; SQL> alter system set MEMORY_TARGET = 1024 m scope = SPFILE; SQL> alter system set SGA_TARGET = 0 SCOPE = SPFILE; SQL> ALTER SYSTEM SET PGA_AGGREGATE_TARGET = 0 SCOPE = SPFILE;