开启应用后就算没有使用到oracle数据库,在任务管理器中oracle占用内存也不断上升,最后因为32位系统对内存的限制导致oracle线程终止,pga占用内存不断上升,sga基本稳定。
以下为:v$pgastat
NAME,VALUE,UNIT
aggregate PGA target parameter,427819008,bytes
aggregate PGA auto target,26738688,bytes
global memory bound,85563392,bytes
total PGA inuse,1091515392,bytes
total PGA allocated,1111573504,bytes
maximum PGA allocated,1118127104,bytes
total freeable PGA memory,0,bytes
process count,35,
max processes count,41,
PGA memory freed back to OS,0,bytes
total PGA used for auto workareas,0,bytes
maximum PGA used for auto workareas,11457536,bytes
total PGA used for manual workareas,0,bytes
maximum PGA used for manual workareas,530432,bytes
over allocation count,112689,
bytes processed,4552969216,bytes
extra bytes read/written,0,bytes
cache hit percentage,100,percent
recompute count (total),122013, oraclesgapag参数优化

解决方案 »

  1.   

    你的用户进程是很有很多吗?是不是有好多的用户一起来连接数据库?用top 和free命令看看
      

  2.   

    这好像是linux的命令吧,我是windows server2003 32位的
      

  3.   

    V$session
    v$process
    有大批量的排序操作?
      

  4.   

    不太清楚怎么判断是排序操作,v$process中下面这一个进程不停地增大pga内存,它一个进程都占到500M内存了,数据库表中有2张分区表,总共有8000W左右条数据,会有影响吗
    ADDR,PID,SPID,USERNAME,SERIAL#,TERMINAL,PROGRAM,TRACEID,TRACEFILE,BACKGROUND,LATCHWAIT,LATCHSPIN,PGA_USED_MEM,PGA_ALLOC_MEM,PGA_FREEABLE_MEM,PGA_MAX_MEM
    345399F8,38,4996,SYSTEM,2,xxxxxx,ORACLE.EXE (SHAD),,e:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_4996.trc,,,,522158889,522907214,0,522907214
      

  5.   


    不太清楚怎么判断是排序操作,v$process中下面这一个进程不停地增大pga内存,它一个进程都占到500M内存了,数据库表中有2张分区表,总共有8000W左右条数据,会有影响吗
    ADDR,PID,SPID,USERNAME,SERIAL#,TERMINAL,PROGRAM,TRACEID,TRACEFILE,BACKGROUND,LATCHWAIT,LATCHSPIN,PGA_USED_MEM,PGA_ALLOC_MEM,PGA_FREEABLE_MEM,PGA_MAX_MEM
    345399F8,38,4996,SYSTEM,2,xxxxxx,ORACLE.EXE (SHAD),,e:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_4996.trc,,,,522158889,522907214,0,522907214那抓出来对应SID的语句分析一下
      

  6.   

    不太清楚怎么判断是排序操作,v$process中下面这一个进程不停地增大pga内存,它一个进程都占到500M内存了,数据库表中有2张分区表,总共有8000W左右条数据,会有影响吗
    ADDR,PID,SPID,USERNAME,SERIAL#,TERMINAL,PROGRAM,TRACEID,TRACEFILE,BACKGROUND,LATCHWAIT,LATCHSPIN,PGA_USED_MEM,PGA_ALLOC_MEM,PGA_FREEABLE_MEM,PGA_MAX_MEM
    345399F8,38,4996,SYSTEM,2,xxxxxx,ORACLE.EXE (SHAD),,e:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_4996.trc,,,,522158889,522907214,0,522907214那抓出来对应SID的语句分析一下

    抓过,抓出来是这一句,看不懂
    SELECT EXECUTION_ID, STATUS, STATUS_DETAIL FROM MGMT_JOB_EXEC_SUMMARY WHERE JOB_ID = :B3 AND TARGET_LIST_INDEX = :B2 AND EXPECTED_START_TIME = :B1