今天早上开始oracle开始出问题。 Alert Log Generic Alert Log Error ORA 错误堆栈 (04030) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-25 9:59:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (04030) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-25 9:44:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (04030) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-25 9:29:39 
 Alert Log Session Terminated Alert Log Error 会话在以下时间/行号终止: Thu Mar 25 09:25:25 2010/2417。 2010-3-25 9:29:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (04030, 04030) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-25 9:29:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (00600[1234], 00600[729]) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-24 17:59:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (00600[729]) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-24 17:59:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (12012, 04030, 06512, 06512, 06512) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-24 14:59:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (00604, 04030, 12012, 04030, 06512, 06512, 06512) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-24 14:29:39 
 Alert Log Generic Alert Log Error ORA 错误堆栈 (12012, 04030, 06512, 06512, 06512) 记录在 D:\ORACLE\PRODUCT\10.2.0\ADMIN\ORCL\BDUMP\alert_orcl.log 中。 2010-3-24 14:29:39 
[code]alert_orcl.log中内容截取部分如下:
[code=Java]
Thu Mar 25 09:55:20 2010
Doing block recovery for file 2 block 654
Thu Mar 25 09:55:20 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Doing block recovery for file 2 block 654
Thu Mar 25 09:55:20 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Doing block recovery for file 2 block 654
Thu Mar 25 09:55:20 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Thu Mar 25 09:55:30 2010
Doing block recovery for file 2 block 654
Thu Mar 25 09:55:30 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Doing block recovery for file 2 block 654
Thu Mar 25 09:55:30 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Doing block recovery for file 2 block 654
Thu Mar 25 09:55:30 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Thu Mar 25 09:55:40 2010
Doing block recovery for file 2 block 654
Thu Mar 25 09:55:40 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Doing block recovery for file 2 block 654
Thu Mar 25 09:55:40 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Doing block recovery for file 2 block 654
Thu Mar 25 09:55:40 2010
Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_pmon_4156.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)Thu Mar 25 09:55:50 2010
Doing block recovery for file 2 block 654
Block recovery from logseq 99, block 88440 to scn 3735751
Thu Mar 25 09:55:50 2010
Recovery of Online Redo Log: Thread 1 Group 2 Seq 99 Reading mem 0
  Mem# 0 errs 0: D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ONLINELOG\O1_MF_2_5QYKG30Y_.LOG
  Mem# 1 errs 0: D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\ONLINELOG\O1_MF_2_5QYKG3WS_.LOG
Block recovery completed at rba 99.88445.16, scn 0.3735754
Doing block recovery for file 1 block 59718
Block recovery from logseq 99, block 88217 to scn 3735751
Thu Mar 25 09:55:50 2010
Recovery of Online Redo Log: Thread 1 Group 2 Seq 99 Reading mem 0
  Mem# 0 errs 0: D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ONLINELOG\O1_MF_2_5QYKG30Y_.LOG
  Mem# 1 errs 0: D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL\ONLINELOG\O1_MF_2_5QYKG3WS_.LOG
Block recovery completed at rba 99.88445.16, scn 0.3735754
PMON deletion of process succeeded

解决方案 »

  1.   

    出现这个问题一般是对内存操作过多造成的,LZ你先试试把SGA/PGA的大小调小一点试试看,不行的话就检查你的应用和数据库设置,看看是不是存在很多内存操作,比如收集统计信息什么的。
      

  2.   

    04030, 00000, "out of process memory when trying to allocate %s bytes (%s,%s)"
    // *Cause:  Operating system process private memory has been exhausted
    // *Action: 
    PGA给大点,块恢复时发现进程PGA内存不够。
      

  3.   

    has been exhausted已被耗尽。
      

  4.   

    是在启动的时候报的错么
    你的各个内存区大小是auto还是手工分配
    在分配pga的时候内存报错,pga太小
    有可能是程序跑的太多了,不过个人觉得内存物理故障
      

  5.   

    一般是oracle sessions连接过多,每个session都会在操作系统上占用一小部分内存,导致操作系统的内存消耗过大,查一下会话连接,是否有不正常的访问,如果有中间件的连接,看看nohup.out日志及jdbc连接池、队列是否异常,
      

  6.   

    这种内存故障一般不是把PGA调大就能解决的,LZ还是先查查应用的情况吧,看看是不是有频繁的内存操作,比如数组什么的。把PGA调大的话,还是会被频繁的内存操作消耗完,管理大内存反而更加消耗系统资源。
      

  7.   

    windows下面启用 /3G选项这问题需要从应用这方面来查,多半是应用程序惹出来的事情.
      

  8.   

    metalink有专门文章讲这个问题 Node 233869.1