`
liwenshui322
  • 浏览: 518954 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(转)Oracle 调整SGA、PGA大小

 
阅读更多

SQL> show parameter sga;

 

SQL> alter system set sga_max_size=4096M scope=spfile;

System altered.

SQL> alter system set sga_target=4096M scope=spfile;

System altered.

 

如果是RAC环境,需要这样增加sid='*':

 

alter system set sga_target=20G scope=spfile sid='*';

 

重启使更改生效:

 

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup

ORACLE instance started.

Total System Global Area 4294967296 bytes

Fixed Size                  2026296 bytes

Variable Size             805307592 bytes

Database Buffers         3472883712 bytes

Redo Buffers               14749696 bytes

Database mounted.

Database opened.

SQL> show parameter sga;

NAME                                 TYPE        VALUE 

----------- ------------------------------

lock_sga                             boolean     FALSE

pre_page_sga                         boolean     FALSE

sga_max_size                         big integer 4G

sga_target                           big integer 4G

 

SQL> show parameter pga;

 

不用重启DB,直接在线修改。 

 

SQL> alter system set workarea_size_policy=auto scope=both; 

 

System altered.

 

SQL> alter system set pga_aggregate_target=512m scope=both; 

 

System altered. 

 

SQL> show parameter workarea 

 

NAME                                 TYPE        VALUE 

------------------------------------ ----------- ------------------------------ 

workarea_size_policy                 string      AUTO --这个设置成AUTO 

SQL> show parameter pga 

 

NAME                                 TYPE        VALUE 

------------------------------------ ----------- ------------------------------ 

pga_aggregate_target                 big integer 536870912

 

SELECT * FROM V$PGASTAT;

 

aggregate PGA auto target                                         477379584 bytes    --当前可用于自动分配了的PGA大小,应该比PGA_AGGREGATE_TARGET 小

 

over allocation count                                                  1118    --实例启动后,发生的分配次数,如果这个值大于0,就要考虑增加pga的值

 

 

 

1 查看 SGA大小  show parameter sga_max_size  db_cache_size的尺寸受 SGA的影响为能大于SGA

 

2 查看 show parameter shared_pool_size 尺寸

 

一般来说 shared_pool_size+db_cache_size=SGA_MAX_SIZE*70%左右

 

经过计算再修改db_cache_size

 

 

 

sql>alter system set db_cache_size= 大小M  scope=spfile sid='数据库SID';

 

sql>shutdown immediate

 

sql>startup

 

sql>show parameter db_cache_size

 

就可以看到修改后的效果了

分享到:
评论

相关推荐

    ORACLE 内存调整(SGA和PGA)

    SGA+PGA最好不要超过总内存的70%,内存详细调整方案,供学习。

    oracle中的SGA和PGA

    此外,工具如Oracle Memory Advisor可以帮助分析SGA和PGA的使用情况,提供内存调整建议。了解源码层面的知识则有助于更深入地理解这些内存区域的工作原理,从而更好地进行问题诊断和性能优化。 总之,Oracle的SGA和...

    oracle SGA PGA UGA 内存

    - 对于并发连接,特别是MTS(多线程服务器)模式,会影响PGA的大小,而PGA大小与UGA密切相关。 - 经验公式:OS使用内存 + SGA + 并发进程数 * (sort_area_size + hash_area_size + 其他) * 总内存。 3. **Program...

    OracleSGA和PGA管理.doc

    OracleSGA和PGA管理

    修改oracle初始化参数,包括Process,Session,SGA,PGA

    如果需要调整`SGA`和`PGA`的大小,可以执行以下命令: ```sql SQL> ALTER SYSTEM SET SGA_TARGET=8000M SCOPE=SPFILE; SQL> ALTER SYSTEM SET PGA_AGGREGATE_TARGET=2000M SCOPE=SPFILE; ``` 这里我们将`SGA`目标...

    更改ORACLE SGA的详细步骤

    当需要调整 SGA 大小以优化数据库性能时,需要遵循一定的步骤。下面将详细介绍如何更改 Oracle SGA 的大小,以及在出现问题时如何恢复到初始设置。 1. **查询 SGA 参数**: 在命令行中,使用 `sqlplus` 登录到...

    根据系统类型、DB版本和OS内存自动计算Oralce建议的memory_target、SGA和PGA大小

    根据系统类型、DB版本和OS内存自动计算Oralce建议的memory_target、SGA和PGA大小

    PGA,SGA与内存

    #### PGA大小估算 对于OLTP(在线事务处理)系统,PGA通常设置为总内存的80%乘以20%,而对于DSS(决策支持系统),PGA则可能占总内存的80%乘以50%。这意味着在高并发的OLTP环境中,每个会话的PGA需求较小,而在数据...

    oracle实例的内存(SGA和PGA)进行调整,优化数据库性

    ### Oracle实例内存优化详解:SGA与PGA的调整策略 #### 概述 在Oracle数据库管理系统中,优化数据库性能往往涉及到对其内部结构的理解与微调,尤其是针对内存资源的合理分配。本文将深入探讨Oracle实例的内存管理...

    Oracle SGA

    这一特性允许数据库根据实际的处理需求动态地调整内存区域的大小,如sort_area_size、pga_aggregate_target、large_pool_size、sga_max_size和db_cache_size。这些内存区域分别服务于排序操作、PL/SQL程序执行、大...

    调整oracle内存及调整表空间大小方法

    ### 调整Oracle内存及调整表空间大小的方法 #### Oracle内存管理 Oracle数据库的内存管理对于确保数据库高效运行至关重要。内存配置不当可能导致性能下降甚至系统崩溃。在默认情况下,Oracle会根据系统的总内存自动...

    ORACLE常规SGA,PGA设置.txt

    oracle11g10g安装备份基础维护

    oracle sga 调整

    - **PGA大小**:PGA的总大小应当与SGA加起来不超过系统剩余内存的总量(即减去操作系统和其他应用程序所需的内存)。如果PGA和SGA的总和过大,可能会导致系统性能下降或不稳定。 - **调整策略**: 1. **监控PGA使用...

    Oracle PGA详解

    1. **自动PGA管理**:自Oracle 10g开始,引入了自动PGA内存管理功能,允许数据库自动调整PGA大小,以适应工作负载的变化,减少了手动调优的需求。 2. **PGA参数配置**:`pga_aggregate_target`是用于设置PGA总目标...

    Oracle内存分配与调整--大牛冯春培的一篇文章

    - **动态分配**:PGA大小随着会话的创建和销毁动态变化。 - **PGA聚合目标**:从Oracle 10g开始支持设置`pga_aggregate_target`参数,允许Oracle自动管理PGA的大小。 - **共享服务器模式下的PGA**:在共享服务器模式...

    oracle内存全面分析

    - **SGA_MAX_SIZE**:设定SGA的最大大小,超过此值,Oracle将无法动态调整SGA的大小。 - **SGA_TARGET**:允许Oracle动态调整SGA的大小,只要不超过SGA_MAX_SIZE设定的限制。 #### PGA(Program Global Area) 与...

Global site tag (gtag.js) - Google Analytics