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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值