ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle LOGICAL standby ORA-04030: out of process memory

oracle LOGICAL standby ORA-04030: out of process memory

原创 Linux操作系统 作者:aaqwsh 时间:2011-06-10 22:15:14 0 删除 编辑
今天下午发现逻辑备库有延迟,于是检查了一下,发现一直在应用一个很大的事物,期间不时有page out,最后竟然出现了ORA-04030: out of process memory :
 
LOGSTDBY Apply process P005 pid=33 OS id=22584 stopped
Fri Jun 10 16:51:37 CST 2011
Errors in file /data/oracle/admin/bdump/orcl_lsp0_25503.trc:
ORA-12801: error signaled in parallel query server P005
ORA-04030: out of process memory when trying to allocate 4040 bytes (knas:shtrans,knas: rpc arguments)
ORA-04030: out of process memory when tryin
LOGSTDBY Analyzer process P003 pid=31 OS id=22580 stopped
LOGSTDBY Apply process P007 pid=37 OS id=22588 stopped
LOGSTDBY Apply process P008 pid=38 OS id=22590 stopped
LOGSTDBY Apply process P004 pid=32 OS id=22582 stopped
LOGSTDBY Apply process P006 pid=34 OS id=22586 stopped
Fri Jun 10 16:51:37 CST 2011
LOGSTDBY status: ORA-16222: automatic Logical Standby retry of last action
LOGSTDBY status: ORA-16111: log mining and apply setting up
 
于是想知道到底是什么事物导致的,从v$logstdby_process,v$session_longopt 都知道一直在进行一个事物,但是查不到是什么object上的。突然灵机一动,在逻辑备库上做了一个awr,发现一个语句执行了大概750万次update操作,终于知道了是什么表。另外,在primary也做了一个awr,发现是一个update语句更新了大概750万记录,估计是应用的动态sql没有控制好条件。
 
原本以为这个操作没有完成,但是后来检查了一下数据,发现数据全部被改了,还好这个字段不怎么变化的,要是这个是金钱怎么办????设计、开发、测试??how  can this happen?? 不过已发生,我们还得擦屁股。
 
1    还好我们的undo比较大,保留时间比较长,如果发现不及时,估计会被顾客给投诉死。恢复也可能就只能logminer了:
create table xxxx_0610 as select  * from  xxxx   as of TIMESTAMP sysdate-0.1;
 
2  循环更新(要是这个是金钱怎么办?):
DECLARE
      COUNt_v NUMBER:=0;
BEGIN
    FOR c IN (SELECT * FROM  xxxx_0610 a WHERE a.ined=1)
    LOOP
        UPDATE xxxx
        SET xxxx.exptime=c.exptime
        WHERE xxxx.id=c.id;
        COUNt_v:=COUNt_v+1;
       
        IF(MOD(count_v,5000)=0)
        THEN
              COMMIT;             
              dbms_lock.sleep(2);
        END IF;
    END LOOP;
   
    COMMIT;
END;
 
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/758322/viewspace-697637/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-11-24

  • 博文量
    132
  • 访问量
    262693