首页 > 数据库 >oracle数据库运行内存PGA+SGA分配

oracle数据库运行内存PGA+SGA分配

时间:2022-10-02 19:45:22浏览次数:59  
标签:target pga buffer PGA oracle 内存 SGA pool

调整内存大小

用dba身份进入oracle,(sqlplus sys/密码 as sysdba):

--显示内存分配情况
show parameter sga;
--修改占用内存的大小
alter system set sga_max_size=200m scope=spfile; 

上面的修改指令需要重启数据库,重启后占用内存便会降低200M以下

修改SGA必须保持的原则:

  1. sga_target不能大于sga_max_size,可以设置为相等。
  2. SGA加上PGA等其他进程占用的内存总数必须小于操作系统的物理内存。

查看连接占用内存

oracle没开启一个连接都是会占用内存的,具体每个连接占用多少内存不一定,可以通过下面的命令查看

--当前一个process消耗最大的内存
select max(pga_used_mem)/1024/1024 M from v$process;
--process消耗最少内存
select min(pga_used_mem)/1024/1024 M from v$process where pga_used_mem>0;

什么是SGA

SGA (System Global Area)是Oracle Instance的 基本组成部分,在实例启动时分配。是一组包含一个Oracle实例的数据和控制信息的共享内存结构。主要是用于存储数据库信息的内存区,该信息为数据库进程所共享(PGA不能共享的)。它包含Oracle 服务器的数据和控制信息,它是在Oracle服务器所驻留的计算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。

包含实例的数据和控制信息,包含如下内存结构:

  1. Database buffer cache:缓存了从磁盘上检索的数据块。
  2. Redo log buffer:缓存了写到磁盘之前的重做信息。
  3. Shared pool:缓存了各用户间可共享的各种结构。
  4. Large pool:一个可选的区域,用来缓存大的I/O请求,以支持并行查询、共享服务器模式以及某些备份操作。
  5. Java pool:保存java虚拟机中特定会话的数据与java代码。
  6. Streams pool:由Oracle streams使用。
  7. Keep buffer cache:保存buffer cache中存储的数据,使其尽时间可能长。
  8. Recycle buffer cache:保存buffer cache中即将过期的数据。
  9. nK block size buffer:为与数据库默认数据块大小不同的数据块提供缓存。用来支持表空间传输。
  • database buffer cache, shared pool, large pool, streams pool与Java pool根据当前数据库状态,自动调整;
  • keep buffer cache,recycle buffer cache,nK block size buffer可以在不关闭实例情况下,动态修改。

什么是PGA

Private SQL Area

  1. 保存了当前会话的绑定信息以及运行时内存结构
  2. 每个执行sql语句的会话,都有一个private sql area
  3. 当多个用户执行相同的sql语句,此sql语句保存在一个称为shared sql area。此share sql area被指定给这些用户的private sql area
  4. 共享服务器模式:private sql area位于SGA的share pool或large pool中
  5. 专用服务器模式:private sql area位于PGA中
SELECT pga_target_for_estimate/1024/1024 "PGA(MB)",pga_target_factor,estd_pga_cache_hit_percentage,estd_overalloc_count FROM v$pga_target_advice;
  1. 第一列表示不同的PGA的具体值
  2. 第二列PGA_TARGET_FACTOR为“1”表示当前的pga_aggregate_target设置大小(其他数值都是以这个数据为基础的倍数),我这里是375M,通过pga_aggregate_target参数可以确认一下
  3. 第三列表示PGA的估算得到的Cache命中率的百分比
  4. 第四列如果为“0”表示可以消除PGA的过载
--可以通过以下指令修改pga
alter system set pga_aggregate_target=375m;

-- 修改后可以通过下面的指令查看
show parameter pga
PGA和SGA设置 指令

alter system set sga_target=100g scope=spfile;
alter system set sga_max_size=100g scope=spfile;
alter system set pga_aggregate_target=25g scope=spfile;
alter system set pga_aggregate_limit=50g scope=spfile;
alter system reset db_cache_size scope=spfile;
alter system reset shared_pool_size scope=spfile;

设置比例和原则  物理内存70%=sga+pga  sga:pga  6:4或7:3都行
pga_aggregate_target这个参数的两倍就是限制(pga_aggregate_limit)即

alter system set pga_aggregate_target=25g scope=spfile;
alter system set pga_aggregate_limit=50g scope=spfile;

标签:target,pga,buffer,PGA,oracle,内存,SGA,pool
From: https://www.cnblogs.com/youzhangcai1/p/16749294.html

相关文章

  • [Oracle] LeetCode 53 Maximum Subarray 贪心
    Givenanintegerarraynums,findthecontiguoussubarray(containingatleastonenumber)whichhasthelargestsumandreturnitssum.Asubarrayisacontig......
  • #yyds干货盘点#oracle常见面试题
    数据库对象:表(table)视图(view)序列(sequence)索引(index)同义词(synonym)1.视图:存储起来的select语句createviewemp_vwasselectemployee_id,last_name,salary......
  • Oracle 托管文件Oracle Managed Files
    什么是Oracle托管文件?使用Oracle托管文件可以简化Oracle数据库的管理。OracleManagedFiles使您(DBA)无需直接管理构成Oracle数据库的操作系统文件。使用Oracle......
  • Oracle 19C 安装及基本操作
    Oracle19c安装包地址:https://pan.baidu.com/s/1CnbkJMLOvPN7rZNUEtttdg 提取码:p00sRedHat7.4安装包地址:https://pan.baidu.com/s/1gNg4B4L2bplkQj46ksyH7A 提取码......
  • [Oracle] LeetCode 37 Sudoku Solver
    WriteaprogramtosolveaSudokupuzzlebyfillingtheemptycells.Asudokusolutionmustsatisfyallofthefollowingrules:Eachofthedigits1-9mustoc......
  • [Oracle] LeetCode 560 Subarray Sum Equals K 思维+Map
    Givenanarrayofintegersnumsandanintegerk,returnthetotalnumberofsubarrayswhosesumequalstok.Asubarrayisacontiguousnon-emptysequenceof......
  • TMS320C6678 + XC7K160T DSP+FPGA+ AD 24bit 国产高精度高性能主板设计方案
    最近在开发一款产品时,用到了一颗国产高精度​​ADC​​​,原子​​半导体​​​的AS1412,了解到该产品的一些优势,不仅精度高、线性度好,功耗还低,能够满足很多力的传感​​测量......
  • TI AM5728 DSP+ARM+FPGA多核异构工业控制处理器
    TIAM5728DSP+ARM+FPGA多核异构工业控制处理器。DSP用于复杂算法处理,ARM用于通用事务管理,FPGA用于高速信号采集,是个完美的高性能嵌入式工业主板组合。 DSP算法开发对于DSP......
  • oracle 同义词
    目录oracle同义词1、同义词的语法2、授权同义词创建权限3、创建同义词4、使用oracle同义词1、同义词的语法CREATE[ORREPLACE][PUBLIC]SYNONYM[schema.]同义词......
  • oracle基本数据类型
    ORACLE基本数据类型:字符串类型、数字类型、日期类型、LOB类型类型作用NUMBERNUMBER(P,S)是最常见的数字类型。P是Precision的英文缩写,即精度缩写,表示有效数字的......