初始建库SGA该设多大、PGA该设多大的建议

php中文网
发布: 2016-06-07 16:12:42
原创
2005人浏览过

1.背景情况 很多新业务系统上线,大部分DBA也不懂业务,就闷着头建库,SGA值设多大,PGA设多大,随便指定一个值就得了,运行一段时间后,也许就因为这个值是随便指定的,例如SGA+PGA大于总物理内存,SGA值或PGA值太小等等,造成DOWN机或性能低下的情况,屡见

1.背景情况

很多新业务系统上线,大部分dba也不懂业务,就闷着头建库,sga值设多大,pga设多大,随便指定一个值就得了,运行一段时间后,也许就因为这个值是随便指定的,例如sga+pga大于总物理内存,sga值或pga值太小等等,造成down机或性能低下的情况,屡见不鲜。

其实,SGA初始设置多大,PGA初始设置多大,在OLTP系统上该怎么设,在OLAP系统上又该怎么设,ORACLE是有说法的。

2.ORACLE实例总占用内存规划

2.1下面是ORACLE官方的建议

Assume that an Oracle database instance is configured to run on a system with 4 GB of physical memory. Part of that memory should be left for the operating system and other non-Oracle applications running on the same hardware system. You might decide to dedicate only 80% (3.2 GB) of the available memory to the Oracle database instance.

2.2含义理解:

如果运行ORACLE数据库的机器上,在不考虑运行其它特殊程序的情况下,以及假设只运行一个实例的情况下,可以将总物理内存的80%分配给数据库实例使用,例如总物理内存为4GB,那就可以为数据库配置3.2GB内存(SGA+PGA)

3.SGA和PGA初始值到底该设置成多大

3.1下面是ORACLE官方的建议

■For OLTP systems, the PGA memory typically accounts for a small fraction of the total memory available (for example, 20%), leaving 80% for the SGA.

■For DSS systems running large, memory-intensive queries, PGA memory can typically use up to 70% of the available memory.

Oracle recommends initially dedicating 50% of the available memory to the PGA, and 50% to the SGA. Therefore, the initial value of the PGA_AGGREGATE_TARGET parameter for a DSS system can be calculated as:

3.2含义理解

(1)对于OLTP系统,SGA占数据库使用总内存的80%,PGA占数据库使用内存的20%(例如总物理内存4GB,PGA则需要占用约655MB)

(2)对于OLAP(DSS)系统,对于密集大查询的系统,PGA可以占到数据库使用总内存的70%(例如总物理内存4GB,PGA则需要占用约2.2GB(2.24GB),建议最初设置数据库使用总内存的50%

3.3建议计算公式

(1)OLTP系统:

SGA_TARGET = (total_mem * 0.8) * 0.8

IT教育培训机构单页模板
IT教育培训机构单页模板

1、IT行业里其实有很多细分领域和工种,领域如云计算、游戏、电商、大数据、金融IT、智能硬件等,工种如开发、运维、测试、产品经理、项目经理、UI设计、数据分析师等,到底学哪个好?根据自身特长 爱好 2、虽然有很多细分领域,但是不是每个领域都适合你,比如像人工智能、VR开发等相比偏难一些的领域,我不觉得适合无计算机专业背景的小白学习,至少不应该做为初始的学习目标,因为这些领域涉及到计算机里各种复

IT教育培训机构单页模板 54
查看详情 IT教育培训机构单页模板

PGA_AGGREGATE_TARGET=(total_mem * 0.8) * 0.2

(2)OLAP(DSS)系统:

SGA_TARGET= (total_mem * 0.8) * 0.5

PGA_AGGREGATE_TARGET =(total_mem * 0.8) * 0.5

4.上线后调整值参考

上面的一切初始建议值,都是在上线前的最佳配置建议值,在上线运行一段时间后,系统运行特性真面目就慢慢的体现出来了,这时,就应该根据运行实际需求及时的调整SGA_TARGET与PGA_AGGREGATE_TARGET的值了。

SGA_TARGET的实际需求建议值,可以参考V$SGA_TARGET_ADVICE

PGA_AGGREGATE_TARGET的实际需求建议值,可以参考V$PGA_TARGET_ADVICE视图

 

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号